这是我的所有路线;
data
这是我(很多)定义的路线之一;
Route::group(['prefix' => 'admin'], function () {
Route::resource('surveys', 'SurveyController');
Route::resource('surveys/{survey}/groups', 'GroupController');
Route::resource('surveys/{survey}/groups/{group}/questions', 'QuestionController');
});
我如何调用它并在我的视图中传递group.id和survey.id(如果重要的话,使用twig_bridge是twig)
我试过了;
METHOD = GET|HEAD
URI = admin/surveys/{survey}/groups/{groups}
Name = admin.surveys.{survey}.groups.show
Action = App\Http\Controllers\GroupController@show
和其他类似的语法但总是会出现意外的标点符号错误
我自己没有给这些路线命名。这是默认的Laravel,当坚持命名约定时。
答案 0 :(得分:0)
您可以使用点语法来定义嵌套资源路由:
Route::group(['prefix' => 'admin'], function () {
Route::resource('surveys', 'SurveyController');
Route::resource('surveys.groups', 'GroupController');
Route::resource('surveys.groups.questions', 'QuestionController');
});
然后你可以像这样路由到他们:
route('admin.surveys.groups.show', [$surveyId, $groupId])
route('admin.surveys.groups.questions.show', [$surveyId, $groupId, $questionId])