【发布时间】:2012-07-10 23:19:10
【问题描述】:
我有以下代码
%br
= f.label :active, 'Status'
= f.select :active, ['Active','Inactive']
Symbol :active 是一个布尔类型的 var。我如何匹配 Active => 1/True 和 Inactive => 0/False 来添加数据库。
对不起,新手问题,但我无法弄清楚。
【问题讨论】:
标签: ruby-on-rails haml
我有以下代码
%br
= f.label :active, 'Status'
= f.select :active, ['Active','Inactive']
Symbol :active 是一个布尔类型的 var。我如何匹配 Active => 1/True 和 Inactive => 0/False 来添加数据库。
对不起,新手问题,但我无法弄清楚。
【问题讨论】:
标签: ruby-on-rails haml
如果您使用的是下拉菜单,则为先前答案的一个小扩展。
我需要使用“options_for_select”。此外,":selected" 会存储您下次返回表单时的值。
<%= f.select(:active, options_for_select([['Active', true], ['Inactive', false]], {:selected => @symbol.active}),:prompt => "Select") %>
【讨论】:
您可以为每个选项提供一对值:第一个将用作标签(<option> 标记的内部文本),第二个将用作value 属性:
= f.select :active, [['Active', true], ['Inactive', false]]
它会呈现如下内容:
<select name="model[active]">
<option value="true">Active</option>
<option value="false">Inactive</option>
</select>
查看select 和options_for_select 的文档。
【讨论】: