Route::post('comments/{post_id}', ['uses' => 'CommentsController@store', 'as' => 'comments.store']);
而且当然
Route::post('comments/', ['uses' => 'CommentsController@update', 'as' => 'comments.update']);
由于两条路线使用的路线大致相同,因此laravel首先经过定义的
comments.store路线,这就是您的路线。
有几种方法可以解决此问题。
更改路线顺序:
Route::post('comments/update', ['uses' => 'CommentsController@update', 'as' => 'comments.update']);
Route::post(‘comments/{post_id}’, [‘uses’ => ‘CommentsController@store’, ‘as’ => ‘comments.store’]);
Route::get(‘comments/{id}/edit’, [‘uses’ => ‘CommentsController@edit’, ‘as’ => ‘comments.edit’]);使用路线约束:
Route::post('comments/{post_id}', ['uses' => 'CommentsController@store', 'as' => 'comments.store'
])->where([‘post_id’ => ‘[0-9]+’]);;
Route::get(‘comments/{id}/edit’, [‘uses’ => ‘CommentsController@edit’, ‘as’ => ‘comments.edit’]);
Route::post(‘comments/update’, [‘uses’ => ‘CommentsController@update’, ‘as’ => ‘comments.update’]);
值得注意的是,我不知道Facade注册表如何处理外观方法的大小写(上下左右)。因此,为了不引起其他错误,我使用的下大写字母
POST,就像在文档中一样。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)