在Rails 3中,当为“类别”生成脚手架时,将在erb视图中使用categories_path(和edit_category_path(@category),...)。
这不是可以在任何地方找到并且可能生成的变量。但是在我的情况下,对于另一个实体Article,我首先生成模型然后生成控制器。现在,当我尝试输出articles_path时,我得到了一个
#<#:0x000001019d1be0>
的未定义方法`articles_path'
我甚至无法使用<%= form_for(@article) do |f| %>
,因为这会产生相同的错误。
我应该做什么?
我的路线是这样的:
resources :categories do
resources :articles
end
答案 0 :(得分:1)
文章资源属于类别范围,因此正确使用的路径为category_articles_path(@category)
或edit_category_articles_path(@category, @article)
。要为您的form_for执行此操作,请尝试:
<%= form_for([@category, @article]) do |f| %>
答案 1 :(得分:0)
由于文章位于类别范围内,您需要使用 category_articles_path 。