用户可以选择 5 个选项。一旦他们选择了一个,他们就不能再选择它了。目前,我只是从列表中删除以前使用的选项......所以,他们只能从以前未使用的选项中进行选择。我唯一不喜欢的是,当用户向数据库添加新记录时,他们可能想知道为什么列表中似乎缺少选项。
我的一个想法是将以前使用的选项留在列表中,但将它们划掉并禁用它们。
是否可以仅禁用(和/或添加类)选择中的某些选项?Simple_form 似乎有一个 option_html 助手,但没有看到它记录在案。
用户可以选择 5 个选项。一旦他们选择了一个,他们就不能再选择它了。目前,我只是从列表中删除以前使用的选项......所以,他们只能从以前未使用的选项中进行选择。我唯一不喜欢的是,当用户向数据库添加新记录时,他们可能想知道为什么列表中似乎缺少选项。
我的一个想法是将以前使用的选项留在列表中,但将它们划掉并禁用它们。
是否可以仅禁用(和/或添加类)选择中的某些选项?Simple_form 似乎有一个 option_html 助手,但没有看到它记录在案。
事实证明,这很容易做到。Rails 支持它...
<%= f.association :ying, collection: @yangs, :disabled => @used_yangs %>
仅当我将 id 传递给禁用选项时,它才对我有用。像这样:
= f.association :stuff, disabled: Stuff.where(enabled: false).map(&:id)
使用 Rails 4.2.3
关于 Rails 文档是正确的。在此处查看:disabled
描述:http: //api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html