我基本上是想做一个自定义索引 在我的route.rb中,我有:
resources :tokens do
resources :visits
collection do
get :open
get :expired
end
end
我的路线显示为:
open_tokens GET /tokens/open(.:format) tokens#open
expired_tokens GET /tokens/expired(.:format) tokens#expired
我已经在令牌控制器中定义了开放和过期
def open
@q = Token.open_token.includes(:households, :visits).search(params[:q])
@tokens = @q.result
respond_to do |format|
format.html {render template: 'tokens/open'}
end
end
def expired
@q = Token.expired_token.includes(:households, :visits).search(params[:q])
@tokens = @q.result
respond_to do |format|
format.html {render template: 'tokens/expired'}
end
end
但是它出现在我的显示控制器上,并显示以下错误:
Couldn't find Token with id=open
它在我的“显示”操作时崩溃:
更好的错误将请求显示为:
{“动作” =>“显示”,“控制器” =>“令牌”,“ id” =>“打开”}
在我看来,该动作应该在没有参数的情况下打开
我在做什么错了?
答案 0 :(得分:0)
我想我可能已经回答了我的问题,因为看来Rails每个控制器只能有一个索引,所以我无法定义另一个充当索引的视图。
所以现在我想做的是传递一个参数,这样我就可以应用开放范围或过期范围