1
resposta

ProdutoRequest na função altera

Quero implementar o request de validação na função edita do ProdutoController, como posso implementar?

    public function altera($id){

        $params = Request::all();
        $produto = Produto::find($id);
        $produto->update($params);

        return redirect('/produtos');
    }
 public function authorize()
    {
        return true;
    }

    public function rules()
    {
        return [
            'nome' => 'required|min:5',
            'descricao' => 'required|max:255',
            'valor' => 'required|numeric',
            'quantidade' => 'required|numeric',
            'tamanho' => 'required|max:100'
        ];
    }

    public function messages(){
        return [
            'required' => 'Preencha o campo :attribute.',
            'valor.required' => 'Preencha o campo preço.',
            'descricao.required' => 'Preencha o campo descrição.'
        ];
    }

Alguém pode ajudar?

1 resposta

Olá, Dyane.

No curso atualizado de Laravel você aprende isso nesta aula: https://cursos.alura.com.br/course/laravel-produtividade-desenvolvimento-web/task/53302

Mas basicamente, basta você fazer uso dessa nova classe em seu método altera.

Mais ou menos assim:

public function altera(ProdutoRequest $request, int$id )
{
    $params = $request->all();
    $produto = Produto::find($id);
    $produto->update($params);

    return redirect('/produtos');
}