2013-07-26 5 views
1

Это всего лишь стилистические вопросы, на которые мне хотелось высказаться. Я работаю с RoR-приложением, в котором есть две модели, сообщения и пользователи. Сообщения можно просматривать отдельно или в виде списков через post_controller, и все сообщения имеют пользователя. Теперь я хочу реализовать страницу пользователя, в которой перечислены все сообщения от конкретного пользователя. Очевидно, что эта страница будет нуждаться в собственном представлении, но должен ли я установить элемент управления для него в Post Controller или User Controller?Где я должен помещать свою страницу пользователя в рельсы?

ответ

2

Там нет необходимости, чтобы создать еще один контроллер. Наилучший вариант был бы использовать вложенные ресурсы, например, так:

resources :users do 
    resources :posts 
end 

Таким образом, путь/пользователь /: user_id/сообщения будут созданы, который будет соответствовать вашим указательным действиям в контроллере Post.

+0

Это кажется наиболее правильным решением. –

0

Я думаю, лучше всего было бы создание нового контроллера

0

Почему бы не сделать что-то вроде этого в контроллере пользователя

def show 
    @user = User.find(params[:id]) 
    @posts = @user.posts 
end 
+0

Потому что есть более простой и понятный способ сделать это. См. Ответ @ amb110395. – Substantial

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