添加选项组标签下拉
问题描述:
我创建一个下拉的用户喜欢 -添加选项组标签下拉
= f.association :user, :collection => current_user.company.users.order('first_name'),
:include_blank => "Select a approver",
:label => false,
它创建了一个下拉我想要什么。 现在,我想这将不可选
我想米跌落的样子
label field
all users list goes after label
所有用户前加一个标签,这个标签字段将是不可选的,即用户无法选择这个标签。 有什么想法?
答
您可以手动添加一个选项是这样的:
:collection => { "My new label" => ""}.merge(current_user.company.users.order('first_name'))
你可能想提取到一个辅助方法,但我会离开,给你。
新选项现在有一个空值相关联,所以你可能会阻止该选项的选择,在模型验证:
class MyModel < ActiveReceord::Base
validates :user, :presence => true
# ...
end
现在对于具体的选项禁用,则可以添加选项:disabled => [...]
选择助手,将在HTML disabled
attribute添加到选择您指定的选项:
= f.association :user,
:collection => :collection => { "My new label" => ""}.merge(current_user.company.users.order('first_name')),
:include_blank => "Select a approver",
:label => false,
:disabled => [""]
感谢您的答复。但是这也不能正常工作,它显示以下错误 无法将ActiveRecord :: Relation转换为哈希 – user1875926 2013-05-08 10:24:40
再次感谢...我正在使用禁用选项。但我想要的是一种非选择的标签添加到下拉 – user1875926 2013-05-08 10:25:56
尽管它的工作原理,它会添加一个空白值选项字段地掉了下来,如:include_blank – user1875926 2013-05-08 11:01:20