0

我已经适当地设置了我的文件结构(我认为!),并声称没有任何响应显示。

我的文件结构:

 views/admin/admin_wysi/index.html.haml

我的控制器( controllers/admin/admin_wysis_controller.rb )

class Admin::AdminWysisController < Admin::ApplicationController

 def index
 end

end  

我的路线.rb

map.namespace :admin do |admin|
  admin.resource :admin_wysi
end

当我尝试访问 www.website.com/admin/admin_wysi/ 时出现错误:

Unknown action

No action responded to show. Actions: index

我在这里做错了什么?

4

2 回答 2

2

你的路线是单一的。但你可能想要复数。将您的路线定义更改为:

map.resources :admin_wysi

或者,如果您真的想要一条单一路线,请将您的控制器更改为:

class Admin::AdminWysisController < Admin::ApplicationController

 def show
 end

end  

除了所有这些,我建议您阅读有关路由的Rails 指南,它应该提供更多详细信息如何以及实际发生了什么:)

于 2010-06-22T16:42:41.777 回答
1

错误消息表明它正在寻找“显示”操作而不是“索引”操作。一个可以尝试的命令是“rake routes”(来自您的终端)。这将打印您的应用程序支持的路径列表以及它们映射到的控制器/操作。在这种情况下,您的问题已通过以下方式解决:

map.namespace :admin do |admin|
  admin.resources :admin_wysi # added 's'
end

执行“map.resource”仅路由 7 个 restful 路由中的 6 个(不是索引),因此您必须使用“map.resources”(前提是您有多个资源而不是单个资源)。

于 2010-06-22T16:42:20.633 回答