在我的webapp中,我有一个包含属性的模型,该属性是一个int数组。每个int作为一个含义,所以我使用枚举。但似乎我对问题的处理方法不起作用:
我有以下型号:
class A < ActiveRecord::Base
enum someenum: [:abc, :def, :ghi]
end
在数据库中:
class CreateAs < ActiveRecord::Migration
t.integer :someenum, array: true, default: []
end
在视图中我有这样的事情:
f.input :someenum, collection: A.someenums, as: :check_boxes
返回['0', '1', '']
之类的内容。
但是当我创建A的实例时,我收到以下错误:
ArgumentError: '['0', '1', '']' is not a valid someenum
有人知道我做错了吗?
由于
答案 0 :(得分:0)
尝试更改此
f.input :someenum, collection: A.someenums, as: :check_boxes
到
f.input :someenum, collection: A.someenums.keys.to_a, as: :check_boxes