我正在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所述,将模型放入控制器中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top