在Rails 4中使用强参数的值白名单

是否可以使用强参数来确保使用可能值的白名单过滤属性?

例如,我有一个参数年龄,我想确保只能有这个值[10,20,30,40,50]。 是否可以使用强参数逻辑来确保?

谢谢

快速回答

没有! 强参数只允许您从散列中过滤键,而不管它们具有什么值。

答案很长

没有! 但正如评论中指出的那样,您最好的解决方案是使用validation :

class MyModel < ActiveRecord::Base validates :value, inclusion: { in: [1,2,3] } end