我有一个嵌套资源,在我的 route 看起来像这样:
resource :reviews do
resource :entries
end
我正在尝试为新的入口路径创建链接,如下所示:
<%= link_to "New Entry", new_review_entry_path(@review) %>
不幸的是,我不断收到此错误消息:
undefined method `new_review_entry_path' for #<#<Class:0x5150d78>:0x483c798>
我检查了 rake 路由,结果发现该路由应该复数为:
new_reviews_entries_path(@review)
不幸的是,当我这样做时,我得到了一个奇怪的网址:
/reviews/entries/new.1
显然,这也行不通。知道这里发生了什么吗?
最佳答案
这是资源
,而不是资源
。你的第一次尝试是正确的;)
resources :reviews do
resources :entries
end
当资源“唯一”时,您应该使用resource
。例如,如果用户只有一个个人资料,您将执行以下操作:
resources :users do
resource :profile
end
关于ruby-on-rails-3 - 导轨 : getting the 'new' path for a nested resource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14430101/