validates_inclusion_of:in => [true,false]允许字符串和Fixnums

时间:2010-08-16 08:19:20

标签: ruby-on-rails validation boolean

我的模型中有这个验证:

validates_inclusion_of :imported, :in => [true, false]

但仍允许Strings和Fixnums。这个Shoulda宏返回2个失败:

should_not_allow_values_for :imported, "blah", 42

我在测试中检查了宏没有错:

@item.imported = 42
assert !@item.save

我得到了这个失败:

<false> is not true.

这是schema.rb中的相关行:

t.boolean  "imported"

1 个答案:

答案 0 :(得分:4)

这个问题现在已经过时了,所以我希望你找到答案,但这里是我回答的另一个问题的全面故事:

Rails: Validating inclusion of a boolean fails tests