rails g scaffold game optionselect:string
rake db:migrate
在我的视图中 form_for(@game):
<div class="field">
<%= f.label :optionselect %><br />
<%= f.select( :optionselect, "id", { "Option 1" => "1", "Option 2" => "2"}) %>
</div>
我想做什么:
从选择框中选择一个值并将所选值保存在 @ game.optionselect
中问题:没有可见的可选值。当我在 f.select 前面省略 f。时,这些值是可见的,但是没有保存(我知道)。
答案 0 :(得分:2)
最好将这些集合保留在模型中并创建类方法来准备它们,例如:
class Game < ActiveRecord::Base
OPTIONS = [
{:name => 'Option 1', :id => 1},
{:name => 'Option 2', :id => 2},
{:name => 'Option 3', :id => 3}
]
def self.options
OPTIONS.map{ |option| [option[:name], option[:id]] }
end
end
然后在视图中:
= f.select :optionselect, Game.options