Ruby on rails 设计模型应进行验证:电子邮件可以';不要为空(我不是在测试电子邮件)
我有一个设计模型叫“候选人” 我得到了这个测试:Ruby on rails 设计模型应进行验证:电子邮件可以';不要为空(我不是在测试电子邮件),ruby-on-rails,devise,Ruby On Rails,Devise,我有一个设计模型叫“候选人” 我得到了这个测试: it { expect(subject).to validate_presence_of(:democracyengine_recipient_id) } 模型中的这一行: validates :democracyengine_recipient_id, presence: true 以及验证工作(在其他测试中) 但在这个特殊的测试中,我得到了这个错误: Failure/Error: it { expect(subject).to vali
it { expect(subject).to validate_presence_of(:democracyengine_recipient_id) }
模型中的这一行:
validates :democracyengine_recipient_id, presence: true
以及验证工作(在其他测试中)
但在这个特殊的测试中,我得到了这个错误:
Failure/Error: it { expect(subject).to validate_presence_of(:democracyengine_recipient_id) }
Expected errors to include "can't be blank" when democracyengine_recipient_id is set to nil, got errors: ["email can't be blank (\"\")", "password can't be blank (nil)"]
如何修复它?
presence:true
是一个ActiveRecord验证器,我认为它应该按以下方式调用:(注意:验证和不验证)
validate
方法向类中添加验证方法或块。当覆盖validate实例方法变得过于笨拙,并且您正在寻找更具描述性的验证声明时,这非常有用。
请参阅中的更多详细信息
有关验证的信息,请参见官方
validates :democracyengine_recipient_id, presence: true