我在尝试配置 rails 以使用“admin”命名空间路由管理非管理员模型时遇到问题。例如,一个Widget
模型通常有一个 RESTful 路由,/widgets
带有一个名为 的控制器WidgetsController
,我有一个路由文件,用于命名路由和控制器:
namespace :admin do
resources :widgets
end
class Admin::WidgetsController < ApplicationController
def index
@widgets = ::Widget.all
respond_to do |format|
format.html
end
end
...etc...
end
在视图中,当我尝试使用路由方法进行创建时出现错误:
<% @widgets.each do |widget| %>
<%= link_to 'Show', admin_widget(widget) %>
<% end %>
错误:
undefined method `admin_widget'
我究竟做错了什么?