0

我在 Rails 3.2.14 中为表单使用了一个选择助手标签:

<%= f.label :male, 'Gender' %>
<%= f.select :male, [['Girl', 0], ['Boy', 1]]  %>

和菜单项显示在下拉列表中,但即使在数据库中设置为Girl,也永远不会被选中。实际上是 中的一个值。BoyBoymale1malebooleanschema.rb

如何让f.select标签自动选择Boyif maleis true

4

2 回答 2

1

实际上你需要调用options_for_select,在这里你可以定义选择哪个选项。例子:

options = options_for_select [['Girl', 0], ['Boy', 1]], 1
f.select :male, options

将输出选择标签及其选项,而 Boy 将被选中。

--

您还可以查看options_from_collection_for_select,最初设计用于记录集合,例如:

options_from_collection_for_select @users, :id, :name

生成具有id值和name文本的选项。options_from_collection_for_select基本上可以在任何地方使用

coll = %w[cheese garlic]
options_from_collection_for_select coll, :to_s, :humanize

也会起作用

于 2013-07-26T10:48:13.427 回答
0

尝试这个,

f.object.male %>

从这个stackoverflow 问题中获得更多选项

于 2013-07-26T10:55:26.700 回答