Error: “Unknown validator: 'PresencesValidator'” when trying to validate a form
我正在从事第一个Rails项目,并且已经使用Rails构建了一个小型站点,现在我正尝试遵循Rails入门教程来构建博客。
在尝试验证我的博客帖子时,我停留在6.5的http://guides.rubyonrails.org/getting_started.html上,这是我得到的错误:
这是我的帖子模型
1 2 3 4 5 | class Post < ActiveRecord::Base validates :name, :presence => { :message =>"Name cannot be blank" } validates :title, :presence => { :message =>"Title cannot be blank" } validates :content, :presences => { :message =>"Content cannot be blank" } end |
我也尝试只设置:presence => true,但是有同样的错误。
为什么会出现此错误以及如何解决?
因为这是一个错字:
1 | validates :content, :presences => { :message =>"Content cannot be blank" } |
您打算写
此外,您在这些消息上给出的消息是默认消息,因此您实际上不需要提供它。
最后一件事,如果您想验证三件事的存在,可以通过以下方式一行完成:
1 | validates_presence_of :name, :title, :content |
这将完成与您尝试编写的代码相同的行为。有两种验证语法,当您对每个属性进行大量验证时,您一直使用的一种语法比较好;我个人认为,当您要运行相同的验证具有许多不同的属性时,另一种语法则更好。基本上任何一个都需要较少的键入。
请参阅"验证和回调"指南作为参考。干杯。