Я думаю, вы запутались здесь во вложенных (+ именованных) маршрутах и единичных ресурсах. Я предполагаю, что вы пытаетесь создать единственный feed
ресурс, который принадлежит пользователю (учетной записи), верно?
Если это так, ваши существующие маршруты
map.resource :account, :controller => "users" do |page|
page.resources :feeds
end
должно быть
map.resources :accounts, :controller => "users" do |account|
account.resource :feed
end
Обратите внимание, что accounts
- это множественные ресурсы, но фид единственного числа. Это дает вам обычные маршруты RESTful для ваших учетных записей (т. Е. Ваших пользователей) ... но особый ресурс "подачи". Вам не нужно ссылаться на идентификатор вашего канала - но обычно вы просто работаете с @ account.feed
используйте rake routes
, чтобы показать вам полный список маршрутов, которые он создает.
account_feed_path(@account)
, например, даст вам страницу Показать для канала.
Таким образом, пути дают вам возможность использовать помощников по форме следующим образом:
<% form_for :feed, account_feed_path(@account) do |f| %>
<% end %>