如何在Laravel 4上路由子资源?

毛罗

因此,我编写了一个具有嵌套资源的简单应用程序:帖子和评论。自然,帖子是父母,评论是孩子,每个帖子都是一对一的。很简单。现在,我希望注释索引(和创建,POST)页面位于posts/{post_id}/comments,更新(PUT)位于/posts/{post_id}/comments/{comment_id}所以我尝试了这个:

Route::resource('posts', 'PostsController');

Route::group(array('prefix' => 'posts/{post_id}'), function() {
    Route::resource('comments', 'CommentsController');
});

但由于路由名称已注册为,因此无法使用posts.{post_id}.comments.create基本上,post_id占位符被视为路由的一部分,并且不是整齐的。有什么好的方法吗?还是我应该一个一个地写路由并摆脱组/ Route :: resource / prefix的问题?

Burak Erdem尚未活跃在Medium上。

您可以像这样使用嵌套的资源。

Route::resource('posts', 'PostsController');
Route::resource('posts.comments', 'CommentsController');

当您php artisan routes看到新路线时;

+--------+-------------------------------------------------+------------------------+------------------------------------+----------------+---------------+
| Domain | URI                                             | Name                   | Action                             | Before Filters | After Filters |
+--------+-------------------------------------------------+------------------------+------------------------------------+----------------+---------------+
|        | GET|HEAD posts                                  | posts.index            | PostsController@index              |                |               |
|        | GET|HEAD posts/create                           | posts.create           | PostsController@create             |                |               |
|        | POST posts                                      | posts.store            | PostsController@store              |                |               |
|        | GET|HEAD posts/{posts}                          | posts.show             | PostsController@show               |                |               |
|        | GET|HEAD posts/{posts}/edit                     | posts.edit             | PostsController@edit               |                |               |
|        | PUT posts/{posts}                               | posts.update           | PostsController@update             |                |               |
|        | PATCH posts/{posts}                             |                        | PostsController@update             |                |               |
|        | DELETE posts/{posts}                            | posts.destroy          | PostsController@destroy            |                |               |
|        | GET|HEAD posts/{posts}/comments                 | posts.comments.index   | CommentsController@index           |                |               |
|        | GET|HEAD posts/{posts}/comments/create          | posts.comments.create  | CommentsController@create          |                |               |
|        | POST posts/{posts}/comments                     | posts.comments.store   | CommentsController@store           |                |               |
|        | GET|HEAD posts/{posts}/comments/{comments}      | posts.comments.show    | CommentsController@show            |                |               |
|        | GET|HEAD posts/{posts}/comments/{comments}/edit | posts.comments.edit    | CommentsController@edit            |                |               |
|        | PUT posts/{posts}/comments/{comments}           | posts.comments.update  | CommentsController@update          |                |               |
|        | PATCH posts/{posts}/comments/{comments}         |                        | CommentsController@update          |                |               |
|        | DELETE posts/{posts}/comments/{comments}        | posts.comments.destroy | CommentsController@destroy         |                |               |
+--------+-------------------------------------------------+------------------------+------------------------------------+----------------+---------------+

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Laravel 4上路由子资源?

来自分类Dev

如何在AngularJS上路由页面

来自分类Dev

使用 SSR 和 Laravel 在 Vue 上路由

来自分类Dev

如何在Cloudfront上路由到其他应用

来自分类Dev

如何在Laravel中更改嵌套资源路由的名称?

来自分类Dev

Laravel 4资源路由和认证

来自分类Dev

如何覆盖 Laravel 资源路由?

来自分类Dev

使用资源控制器的Laravel子域路由

来自分类Dev

Laravel子域路由和资源控制器

来自分类Dev

如何在路由Laravel中指定路径?

来自分类Dev

如何在 Laravel 5.6 中使用路由?

来自分类Dev

如何在Laravel 4中使用子域?

来自分类Dev

Laravel 4:路由到表单中的资源丰富的方法

来自分类Dev

如何在混合的MVC和Web窗体上路由网页

来自分类Dev

如何在Laravel中创建子域

来自分类Dev

Laravel路由资源问题

来自分类Dev

如何在LARAVEL 4上使用TCPDF

来自分类Dev

如何在laravel 4中批量更新

来自分类Dev

如何在视图中调用资源控制器索引laravel 4

来自分类Dev

如何在Laravel 4(最佳化)中载入资源(Css,js档案)

来自分类Dev

Laravel 4如何在Route :: controller中使用路由名称别名

来自分类Dev

如何在Laravel 4的路由中将用户重定向到主页

来自分类Dev

如何在Laravel 4路由组上应用多个过滤器?

来自分类Dev

如何在Laravel 4中基于用户类型制作路由过滤器?

来自分类Dev

如何在Laravel 4中为命名路由声明控制器方法?

来自分类Dev

如何在Laravel的Blade模板中链接到静态资源?

来自分类Dev

Laravel 4-路由到除www之外的子域

来自分类Dev

如何在Laravel中基于application / json头加载路由

来自分类Dev

如何在Laravel中路由到静态文件夹

Related 相关文章

热门标签

归档