Rails формируют вспомогательные и RESTful маршруты - PullRequest
0 голосов
/ 03 июня 2010

У меня есть частичная текущая настройка формы для создания новых сообщений в блоге

<% form_for([@current_user, @post])  do |f| %>

Это прекрасно работает при редактировании поста, но при создании нового поста я получаю следующую ошибку:

undefined method `user_posts_path' for #<ActionView::Base:0x6158104>

Мои маршруты настроены следующим образом:

map.resources :user do |user|
 user.resources :post
end

Есть ли лучший способ настроить партиал для обработки как новых, так и редактирования текущих сообщений?

1 Ответ

1 голос
/ 03 июня 2010
map.resources :user do |user|
  user.resources :posts
end

множить названия вашей модели в декларации маршрутов. как вы видите, он говорит: resourc- es , поэтому вы должны использовать user- s и post- s тоже.

Контроллеры должны называться UsersController и PostsController

Модели должны называться User и Post.

если приведенный выше пример все еще не работает для вас, попробуйте этот

map.resources :users do |u|
  u.resources :posts
end
...