Laravel自定义验证未创建雄辩的对象
我已经编写了一个自定义验证函数Laravel自定义验证未创建雄辩的对象,laravel,validation,Laravel,Validation,我已经编写了一个自定义验证函数 function ($attribute, $value, $fail) { $request = Invitation::where('invitation_token', md5($value)); if ($request === null) { $fail('Invitation Code is invalid.'); } elseif ($request->is_active === false)
function ($attribute, $value, $fail) {
$request = Invitation::where('invitation_token', md5($value));
if ($request === null) {
$fail('Invitation Code is invalid.');
} elseif ($request->is_active === false) {
$fail('This Invitation Code has been expired.');
}
}
它给出错误:属性[is_active]在雄辩的生成器实例上不存在。
为什么它不获取
邀请
对象?您刚刚创建了查询,但没有运行它
在这种情况下,您只能使用get()
方法拾取第一项
$request = Invitation::where('invitation_token', md5($value))->first();
使用此方法将解决您的问题。:) 那么,如果查询没有执行,它不应该返回null吗?如果您运行查询并且没有找到该项,它将只返回null,如果没有,它将返回一个Eloquent Builder的实例。