我正在从常量NOTIFY
创建一个下拉列表。
在视图中:
<%= f.select(:notify, NOTIFY) %>
在environment.rb中,因为我在不同的类中使用常量:
NOTIFY = [['Never', 'never'],['Immediately', 'immediately'],['End Of The Day', 'end_of_day']]
在我的模型中,我想验证存储的内容是列表的一部分:
validates :notify, allow_blank: true, :inclusion => { :in => NOTIFY }
小写键(数组中的第二个值)作为参数发送,因此我得到验证错误。
我哪里错了?
答案 0 :(得分:1)
试试这个:
validates :notify, allow_blank: true, :inclusion => { :in => NOTIFY.map{ |n| n.last } }
包含需要一个数组来检查包含的列表以进行验证。而且,这就是你所缺少的。