在我的用户表中,我有一个角色列,其值是教师和学生。我想插入数据,如果用户角色老师。否则,给出一条消息“仅适用于老师”。这是我的控制器:
$validator = Validator::make($request->all(), [
'title' => 'required|exists:users,role==[Teacher]',
]);
if ($validator->fails()) {
Flash::success('Only for Teacher');
return redirect(route('works',['class_id'=>$class_id]));
}else{
$works = new assainments();
$works -> title = $text;
//$works -> file = $fileName;
$works -> class_id = $class_id;
$works -> users_id = Auth::user()->id;
$works -> save();
Flash::success('Your works has been posted');
return redirect(route('works',['class_id'=>$class_id]));
但这不起作用。仅显示错误消息“仅适用于老师”
该exists
验证规则的工作给定的表,列和额外的where条件。查看更多定义:https : //laravel.com/docs/5.2/validation#rule-exists
但是您可以通过检查if条件以另一种方式解决此问题:
if( \Auth::user()->role == 'Student' )
{
Flash::success('Only for Teacher');
return redirect(route('works',['class_id'=>$class_id]));
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句