【发布时间】:2014-07-04 08:59:19
【问题描述】:
我正在使用 Rails 4.1 中的枚举来跟踪葡萄酒的颜色。
Wine.rb
class Wine < ActiveRecord::Base
enum color: [:red, :white, :sparkling]
end
在我看来,我生成了一个选择,以便用户可以选择具有某种颜色的葡萄酒
f.input :color, :as => :select, :collection => Wine.colors
这会生成以下 HTML:
<select id="wine_color" name="wine[color]">
<option value=""></option>
<option value="0">red</option>
<option value="1">white</option>
<option value="2">sparkling</option>
</select>
但是,在提交表单时,我收到一个参数错误,指出 '1' is not a valid color。我意识到这是因为color 必须等于1 而不是"1"。
有没有办法强制 Rails 将颜色解释为整数而不是字符串?
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-4 enums