2013-07-16 4 views
2

Я создаю REST API в Laravel, и есть одна вещь, которую я не могу понять. Ситуация такова: пользователь может войти в систему, просмотреть статьи и сделать их фаворитами.Laravel - вложенные маршруты без использования юнита ID

Любимая таблица состоит из article_id и user_id

Запросов разработаны следующим образом:

  • [GET]/статьи/24просмотра статьи 24
  • [GET]/статья/24/избранноеуказывает на любимую, если не вернуться 404
  • [POST]/статьи/24/любимыйсделать любимый
  • [DELETE]/статьи/24/любимыйудалить избранное

Кажется хорошо, но вложенные ресурсы по умолчанию ожидайте следующего формата:

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

Что является лучшим способом избежать этого sub 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 в URL, чтобы вызвать правильный маршрут, но должно быть лучше.

ответ

0

Я думаю, вы должны рассмотреть возможность использования Laravel's ResourceController здесь. Возможно, вам стоит пойти с RestfullControllers для ваших нужд.

Смежные вопросы