Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 设计模型应进行验证:电子邮件可以';不要为空(我不是在测试电子邮件)_Ruby On Rails_Devise - Fatal编程技术网

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