Laravel 5根据ID加载项目

时间:2015-09-23 09:37:25

标签: laravel-5

我已经为我的项目模型使用了资源丰富的路由

Route::model('projects', 'Project');
Route::bind('projects', function($value, $route) {
    return App\Project::whereId($value)->first();
});
Route::resource('projects', 'ProjectsController');

一切正常,我可以访问所有功能。所以,如果我去

  

http://localhost:8000/projects

我可以看到所有项目。如果我做了像

这样的事情
  

http://localhost:8000/projects/24

我可以看到ID为24的项目。

现在在我的项目页面上,我有一个加载项目按钮。想法是用户输入他们想要查看的项目的ID,并将它们带到该项目的显示页面。所以我添加了一条额外的路线

Route::get('projects/{projects}', array('as' => 'projects.loadProject', 'uses' => 'ProjectsController@loadProject'));

问题是这条路线与展示页面的网址相同。因此,如果我现在转到id为24的项目的显示页面,我现在得到一个空页面。所以看起来这条路线现在覆盖了展示路线。

如何设置它以根据ID加载项目?

由于

0 个答案:

没有答案