2013-02-11 102 views
0

我在尝试配置rails以使用'admin'命名空间路由管理非管理模型时出现问题。例如,Widget模型通常必须在/widgets有一个叫WidgetsController控制器REST风格的路线,我有一个命名空间的路线和控制器路由文件:Rails:用于管理非管理模型的管理路线

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' 

我在做什么错?

回答

0

我在方法名称末尾缺少path。它应该是:的

admin_widget_path(widget) 

代替admin_widget