在Laravel 5中是否有任何方法可以检查某些值是否与数据库中的值相等?
这是我尝试做的:我有表用户,在表用户中我有额外的列admin_id.在验证中,我需要检查admin_id表单数据库是否等于1.
这是我目前的代码:
$inputs = array(
'projects' => Input::get('project'),
'users' => Input::get('workers')
);
$rules = array(
'projects' => 'required',
'users' => 'required'
);
$validator = Validator::make($inputs,$rules);
if($validator->fails()){
return false;
}else{
return true;
}
解决方法:
我不知道这里的用户输入是什么 – 是否来自用户表?如果是,您可以这样创建规则:
$rules = array(
'projects' => 'required',
'users' => ['required', 'exists:users,id,admin_id,1']
);
所以现在将验证用户是否匹配admin_id等于1的users表中的user_id.
您还应该考虑使用Laravel 5 Requests对象来验证输入.它比在Controller / Model / Repository中放置代码要干净得多. More about Requst Validation.
标签:php,mysql,laravel-5
来源: https://codeday.me/bug/20190519/1137961.html