如何为“配置”中的无线电按钮集合选择一个默认值?
-
13-10-2019 - |
题
我正在rails3和配色中构建形式。我有以下领域:
<%= f.input :housing, :as => :radio, :collection => {"Awesome" => "one", "Great" => "two", "Nice" => "three"} %>
生成的HTML类似于:
<input id="post_one" name="post" type="radio" value="one" />Awesome</label>
<input id="post_two" name="post" type="radio" value="two" />Great</label>
<input id="post_three" name="post" type="radio" value="three" /> Nice</label>
那个工作完美!
现在,我想知道如何通过将“出色”标记为默认值(选择)值的选项。我尝试执行以下操作,但我无法正常工作。
<%= f.input :housing, :as => :radio, :collection => {"Awesome" => "one", "Great" => "two", "Nice" => "three"}, :default => "one" %>
我也尝试传递 :selected
和 :checked
代替 :default
但是,可惜,它行不通。
有人知道这样做的方法吗?
谢谢!
编辑: 阿迪亚(Aditya)提出了一个很好的观点。一些搜索产生了 这个有用的提示.
解决方案
您是否尝试过将模型的外壳属性的值设置为默认值?您可以在启动表单或控制器或最好的方法之前做到这一点,就是在模型初始化中做到这一点?查看可能不是默认恕我直言的最佳场所。
其他提示
在特定的无线电输入选项上设置HTML选项,该选项在阵列中的第三元素的集合成员中设置为:
<%= f.input :author, :as => :radio, :collection => [["Test", 'test'], ["Try", "try", {:disabled => true}]]
在视图中不再有一个选项,正确的方法是默认情况下用正确的值初始化模型,或者如Aditya所述,将模型放入控制器中。
不隶属于 StackOverflow