如何解决RoR:为什么此验证失败?
| 这个真的有我。我的用户模型中有以下验证:validates :first_class,:presence => true,:inclusion => %w(Fighter Ranger Magician)
现在,我尝试在控制台中创建一个示例:
ruby-1.9.2-p180 :053 > new = User.create(:first_class => \'Magician\')
=> #<User id: nil,...
ruby-1.9.2-p180 :054 > new.errors
=> {:first_class=>[\"can\'t be blank\",\"is not included in the list\"]}
为什么会出现此验证错误?我严重无法解决这一问题。
(如果我删除验证,则创建用户,但first_class为nil:O)
解决方法
也许尝试在模型文件中添加
attr_accessible :first_class
您必须告诉rails哪些属性可以通过批量分配来写入。 “ 3”方法采用参数哈希,这被认为是质量分配。 update_attributes
也是如此。
为了验证,您可以创建一个新实例并说“ѭ5”。如果这也失败了,那么您就知道attr_accessible
不是问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。