我正在开发一个 Rails 应用程序,我有2. 不同用户的角色: 高级和基础。
我想管理而不是隐藏基本用户视图中的链接(即使用 CanCan )2组不同的视图:一份供高级用户使用,一份供基础用户使用。
目前我正在以这种方式工作:
case current_operator.op_type
when 'basic'
format.html { render :template => "devices/index_basc.html.erb" }
when 'advanced'
format.html # index.html.erb
end
但我不喜欢在每个操作中为基本用户指定模板( { render :template => "devices/index_basc.html.erb" } )
我认为还有其他方法(我希望更简洁:)
你有什么想法 ?
谢谢你,
亚历山德罗
你可以这样做铁路广播公司 移动设备:
in config/initializers/mime_types.rb
add:
Mime::Type.register_alias "text/html", :basic
in app/controllers/application_controller.rb
add:
before_filter :check_user_status
private
def check_user_status
request.format = :basic if current_operator.op_type == 'basic'
end
现在您可以在控制器中执行以下操作:
class SomeController < ApplicationController
def index
# …
respond_to do |format|
format.html # index.html.erb
format.basic # index.basic.erb
end
end
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)