2
我有所有这些路线:使展会之间的差异,并制定路线
Route::resource('tournaments', 'TournamentController');
而在TournamentController,我有:
public function __construct()
{
$this->middleware('auth')->except('show');
}
但是当我去http://laravel.dev/tournaments/create,Laravel认为创造是比赛slu((如http://laravel.dev/tournaments/my-tournament/),并发送给@show而不是@create。
在这种情况下,我得到一个模型未找到从SubstituteBindings中间件来了...
我真的不明白这一个,我怎样才能避免这种混淆???
编辑:另外我的路线清单:
POST | tournaments | tournaments.store | App\Http\Controllers\[email protected] | web,ownTournament,auth |
GET|HEAD | tournaments | tournaments.index | App\Http\Controllers\[email protected] | web,auth |
GET|HEAD | tournaments/create | tournaments.create | App\Http\Controllers\[email protected] | web,ownTournament,auth |
GET|HEAD | tournaments/deleted | | App\Http\Controllers\[email protected] | web,ownTournament,auth |
GET|HEAD | tournaments/{tournament} | tournaments.show | App\Http\Controllers\[email protected] | web |
PUT|PATCH | tournaments/{tournament} | tournaments.update | App\Http\Controllers\[email protected] | web,ownTournament,auth |
DELETE | tournaments/{tournament} | tournaments.destroy | App\Http\Controllers\[email protected] | web,ownTournament,auth |
GET|HEAD | tournaments/{tournament}/edit | tournaments.edit | App\Http\Controllers\[email protected] | web,ownTournament,auth |
编辑:现在我有另一条路同样的问题:
Route::get('/tournaments/deleted', '[email protected]');
我得到不SubstituteBindings中间件发现了一个模型。
我猜中间是试图解决删除,因为比赛名称...
案重开!
你在'TournamentController'像对应的方法(** **创建,** **显示,**编辑** ...) ? – Mihailo
是的,我愿意!我有索引,创建,存储,显示,编辑,更新,销毁,以及另外2个 –
您不需要路由名称! laravel正如你所做的那样命名它们!尝试删除它们并再次测试 –