Laravel - 不使用子ID的嵌套路由

时间:2013-07-16 23:58:22

标签: rest controller routes laravel

我在Laravel中创建一个REST API,有一点我无法弄清楚。情况如下;用户可以登录,浏览文章并使其成为最爱。

收藏表由article_iduser_id

组成

请求的设计方式如下:

  • [GET] / article / 24 查看第24条
  • [GET] / article / 24 /收藏 表示收藏,如果不是返回404
  • [POST] / article / 24 /收藏 制作收藏
  • [DELETE] / article / 24 /收藏 删除收藏

看起来很好,但默认情况下嵌套资源需要以下格式:

/controller/[id]/sub_controller/[sub_id]

避免此子ID 要求的最佳方法是什么?我不需要收藏夹的ID,因为文章ID 用户ID 的组合足以在我的数据库中找到该项目。

这些是我当前的请求路线:

Route::resource('articles', 'ArticlesController', 
  array('only' => array('index','store','show','destroy')));

Route::resource('articles.favorite', 'ArticlesFavoriteController', 
  array('only' => array('show','store','destroy')));

目前,我要求API用户将/ 0附加到网址以触发正确的路线,但必须有更好的方法。

1 个答案:

答案 0 :(得分:0)

我认为你应该考虑不在这里使用Laravel的ResourceController。也许您应该根据自己的特定需求选择RestfullControllers