У меня есть запрос класса, как показано ниже.Возможно ли иметь несколько правил в одном классе запроса?
class CategoryRequest extends Request
{
public function response(array $errors){
return \Redirect::back()->withErrors($errors)->withInput();
}
public function authorize()
{
return false;
}
public function rules()
{
return [
'Category' => 'required|unique:tblcategory|max:25|min:5'
];
}
}
Существует функция правил.
В контроллере существует несколько методов, которые имеют Request в качестве параметра. Большинство из них различаются с точки зрения валидации. Я имею в виду, если я админ. Я могу обновить 4 поля. Если я менеджер, я могу обновить 3, и если я обычный пользователь, я могу обновить 2. Таким образом, проверка будет изменяться в соответствии с ролями.
Возможно ли, чтобы в классе запроса выполнялось несколько правил?
Будет ли это что-то как '$ rules [] = 'Category' => 'required | unique: tblcategory | max: 25 | min: 5'; ? – Pankaj
Да, вы можете поставить здесь любые правила, которые вы хотите, такие же, как в вашем примере –
Я пробовал этот '$ rules = []; if (\ Auth :: user() -> RoleID == \ App \ Enumeration \ Role \ RoleType :: Admin) { $ rules [] = 'Category' => 'required | unique: tblcategory | max: 25 | мин: 5' ; } 'и получил ошибку: ** синтаксическая ошибка, неожиданная '=>' (T_DOUBLE_ARROW) ** – Pankaj