好的,这看起来很简单,我觉得有点愚蠢的问,但我看到其他人问了类似但不一样的东西,他们的答案并没有解决我的问题。我有一个名为servicios的资源。
资源:servicios,为我的控制器中的“默认”操作创建路由:索引,新建,创建,显示,编辑,更新,销毁。但是,我需要另一个搜索的操作,该操作应该映射到我要实现高级搜索的视图。
我该怎么做?
使用新信息进行编辑 使用这种方法:资源:servicios,:collection => {:search => :得到} http://localhost:3000/servicios/search 我收到了错误 ServiciosController#show中的ActiveRecord :: RecordNotFound 无法找到ID = search
的Servicio
答案 0 :(得分:3)
如果您使用的是Rails 3,那么路径定义将类似于
resources :servicios do
collection do
get :search
end
end
答案 1 :(得分:1)
resources :servicios, :collection => {:search => :get}
将route / servicios / search搜索到servicios控制器中的def search...end
。
或者...
match 'search', :to => 'servicios#search'