[英]Rails 4 - how to write a helper method to present attribute names
我有一个角色表,其中带有属性:name。
我正在尝试在选择集合中使用角色名称列表。 我不想以记录在数据库中的方式列出:name,而是要整洁地呈现它。
例如,:name在数据库中有一个实例,其存储为:admin。 我想在集合中显示为“ Administrator”。
我试图写一个角色助手,说:
模块RolesHelper
def text_for_role(name)
case name
when 'guest'
'Guest - Trial Account'
when 'admin'
'Administrator'
when 'representative'
'Representative'
etc, etc
但是此选项在这种情况下不起作用,因为我想列出所有角色,但要很好地引用它们。
我选择此收藏集:
<%= select_tag "roles", options_from_collection_for_select(@roles, "id", "<%= text_for_role(name)%>"), :multiple => true, :class => 'chosen-select form-control' %>
谁能看到我如何编写可以在集合选择选项的整个列表中使用的助手或演示者?
创建一个类级别的变量,例如:
class MyClass
ROLES = [
['Guest - Trial Account' ,'guest' ],
['Administrator' , 'admin'],
['Representative' , 'representative']
]
end
然后在视图上访问它们:
<%= select_tag 'roles', MyClass::ROLES %>
更多信息: 这里
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.