我的路线中有以下内容.rb:
namespace "admin" do
resources :categories
end
resources :categories
一切顺利。但是,当我删除或注释掉:“资源:类别”部分
namespace "admin" do
resources :categories
end
#resources :categories
我得到了:
ActionView :: Template :: Error(#<#:0x103fcd4c0>的未定义方法`category_path'):
访问/ admin / categories
?? 谢谢
这是索引视图:
<% @admin_categories.each do |admin_category| %>
<tr>
<td><%= link_to 'Show', admin_category %></td>
<td><%= link_to 'Edit', edit_admin_category_path(admin_category) %></td>
<td><%= link_to 'Destroy', admin_category, :confirm => 'Are you sure?', :method => :delete %></td>
</tr>
<% end %>
</table>
<br />
<%= link_to 'New Category', new_admin_category_path %>
和视图和控制器由:
生成rails g scaffold_controller Admin/Category
所以这是一个错误,或者我正在做一些完全错误的事情
答案 0 :(得分:2)
尝试:
admin_category_path(@category)
或[:admin, @category]
您可以查看可用的路线:
rake routes
第二种快捷方式可以这种方式使用:
form_for [:admin, @category]
link_to 'Show', [:admin, @category]
答案 1 :(得分:1)
你很可能有一个
link_to 'category', category_path(category)
或
link_to 'category', category
在您的管理/类别视图中,或在此视图中部分呈现。正如gertas所建议的那样,请将这些链接替换为link_to 'category', [:admin, @category
]或link_to 'category', admin_category_path(category)
。