用户档案的Laravel路线?没有/用户

时间:2015-05-10 05:58:56

标签: php laravel

在Laravel路由中:

我想让配置文件用户使用不错的网址:example.com/steve

其实我有:example.com/user/steve

当我进行路由更新时,这有效:

Route::get('{username}', ['as' => 'profile', 'uses' => 'ProfileController@show']);

但是当我尝试进入另一条路线(/指南)时:

Route::get('guide', ['as' => 'guide', 'uses' => 'GuestController@showGuide']);

这"崩溃"与用户配置文件路由。如何在没有404错误的情况下使其工作?

我想尝试一种不同的方法,即" i方法" (将字母i放在所有网址之前:Route :: get(' i / guide'))

3 个答案:

答案 0 :(得分:2)

Laravel从上到下匹配列出的路线。因此\{username}将匹配\{anyword}

解决此问题的方法之一是:

在您的routes.php Route::get('guide', ['as' => 'guide', 'uses' => 'GuestController@showGuide']);应该是第一位的。

Route::get('{username}', ['as' => 'profile', 'uses' => 'ProfileController@show']);放在其他每条路线之后

答案 1 :(得分:1)

您应首先创建指南路线

Route::get('guide', ['as' => 'guide', 'uses' => 'GuestController@showGuide']);

然后是用户

Route::get('{username}', ['as' => 'profile', 'uses' => 'ProfileController@show']);

序列在routes.php文件中很重要。如果{username}路线位于指引路线之上,那么它会将指南视为{username},因此会相应地重定向您,但之后您没有使用用户名指南的用户

答案 2 :(得分:-2)

class Class1 : INotifyPropertyChanged
{
    private string _pollo = "";
    public string pollo
    {
        get { return _pollo; }
        set
        {
            _pollo = value;
            OnPropertyChanged();
        }
    }

    private void OnPropertyChanged([CallerMemberName] string propertyName = null)
    {
        PropertyChangedEventHandler handler = PropertyChanged;

        if (handler != null)
        {
            handler(this, new PropertyChangedEventArgs(propertyName));
        }
    }

    public event PropertyChangedEventHandler PropertyChanged;
}

对路线进行分组并为其添加前缀