2013-06-05 14 views
0

Я пытаюсь сделать приложение списка задач (очень оригинальное, я знаю :)). У меня есть ресурс списков и ресурс Задачи. В каждом списке есть много задач. Вот мой routes.rb:Должен ли я вставлять ресурсы ресурсов в ресурс пользователей для моего списка приложений todo?

resources :lists do 
    resources :tasks 
end 
root to: 'lists#index' 

Теперь я хочу, чтобы добавить управление пользователями (каждый пользователь может иметь свои собственные списки, для входа в аккаунт/SignOut) к нему. Должен ли я вставлять ресурсы списков в ресурс пользователей? В будущем я хочу, чтобы пользователи могли просматривать общедоступные списки todo других людей. Таким образом, я должен сделать это следующим образом:

resources :users do 
resources :lists do 
    resources :tasks 
end 
end 
root to: 'lists#index' 

Я где-то читал о мелкой вложенности, но я не мог понять это правильно. Пожалуйста, посоветуйте мне, как действовать.

ответ

0

Таким образом:

resources :users do 
resources :lists do 
    resources :tasks 
end 
end 

Ваш маршрут будет, например:

/users/:user_id/lists/:list_id/tasks/:id 

для демонстрации формы задач, с помощником user_list_task_path(@user, @list, @task)

ШТАБЕЛИРОВАНИЕ более чем на один уровень считается плохо практика.

Вы вызываете DB больше времени, чем требуется, маршруты выглядят недружелюбными для пользователя, и вам сложно запрограммировать приложение.

Отъезд: article

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