Fazer o Laravel utilizar o UseRequest
18/04/2018
0
Olá pessoal, tudo bem!?
Estou desenvolvendo uma aplicação e ao invés de deixar habilitado no HOME o registrar do Laravel, criei o Cadastrar, onde somente um usuário logado pode cadastrar outro usuário.
Contudo, não estou conseguindo fazer com que o Laravel utilize o UseRequest que eu criei. Quando testo a criação de um usuário que já existe, ele não cai na validação do unique:users, mas sim dá erro de duplicidade no MySQL:
Conseguem me ajudar? Agradeço desde já ;)
Essa dúvida foi gerada a partir de um comentário no Curso de Laravel
Estou desenvolvendo uma aplicação e ao invés de deixar habilitado no HOME o registrar do Laravel, criei o Cadastrar, onde somente um usuário logado pode cadastrar outro usuário.
Contudo, não estou conseguindo fazer com que o Laravel utilize o UseRequest que eu criei. Quando testo a criação de um usuário que já existe, ele não cai na validação do unique:users, mas sim dá erro de duplicidade no MySQL:
UserController--> public function salvar(App\\\\Http\\\\Requests\\\\UserRequest $request) { $user = Auth::user()->create([ 'name' => $request['name'], 'email' => $request['email'], 'password' => Hash::make($request['password']) ]); \\\\Session::flash('flash_message',[ 'msg'=>"Usuário adicionado com Susesso!", 'class'=>"alert-success" ]); return redirect()->route('user.adicionar'); } UserRequest--> class UserRequest extends FormRequest { /** * Determine if the user is authorized to make this request. * * @return bool */ public function authorize() { return true; } public function messages() { return [ 'name' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|min:6|confirmed' ]; } /** * Get the validation rules that apply to the request. * * @return array */ public function rules() { return [ 'name.required'=>'Nome obrigatório', 'name.max'=>'Preencha um nome com no máximo 255 caracteres', 'email.required'=>'Email obrigatório', 'email.email'=>'Preencha um email válido', 'email.max'=>'Preencha um email com no máximo 255 caracteres', 'email.unique'=>'Email já esta cadastrado', 'password.required'=>'Senha obrigatória', 'password.min'=>'Senha deve ter no mínimo 6 caracteres', 'password.confirmed'=>'Confirme com a mesma senha' ]; } }
Conseguem me ajudar? Agradeço desde já ;)
Essa dúvida foi gerada a partir de um comentário no Curso de Laravel
Rodrigo Cadima
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)