如果您的routes.rb文件中有作用域,例如:
scope "/account" do
resources :items
end
如何确定当前页面是否在“帐户”部分?这意味着“帐户”部分会考虑以下项目吗?
/account/items
/account/item/1
/account/item/1/edit
我知道这可以通过对请求变量执行字符串比较来实现,但是如果有确定此信息的“轨道方式”则很奇怪。
感谢您的任何意见。
答案 0 :(得分:10)
我刚才遇到了同样的问题。我所做的是在范围中添加一个参数:
scope '/me', me_scope: true do
# ...
end
这样我可以在控制器中查找:
class ApplicationController < ActionController::Base
def me_scope?
params[:me_scope].eql? true
end
end
不是最干净的解决方案,但它有效..