Don't you speak portuguese? Translate this site with Google Translator

Pensamento do Dia

Há pessoas que choram por saberem que as rosas têm espinhos; outras há que sorriem por saberem que os espinhos têm rosas. (Autor desconhecido)

Validações no Laravel

Validação de dados

É importante validar todos os dados vindos de formulários.


No método store (que é o form para Add Novo) do controller Clientes e no edit, que é o form de edição

public function store(Request $request)
{

$requestData = $request->all();

// Validação
$this->validate($request, [
'nome' => 'required|min:3|max:45',
'cpf' => 'min:11|max:11|unique:clientes',
'nascimento' => 'date|date_format:Y-m-d' // nullable| torna opcional
],[ // Mensagens
'nome.required' => ' O nome é obrigatório.',
'cpf.required' => ' O CPF é obrigatório.',
'cpf.min' => ' O CPF precisa ter 11 dígitos.',
'nascimento.date' => 'Nascimento precisa ter uma data válida e Y-m-d'
]);

Cliente::create($requestData);

Session::flash('flash_message', 'Cliente added!');

return redirect('clientes');
}


public function messages()
{
return [
'cpf.cpf' => 'CPF inválido'
];
}


public $rules = [
'nome' => 'required|min:3|max:45',
'cpf' => 'min:11|max:11|unique',
'nascimento' => 'date|date_format:Y-m-d',
'email' => 'required|email|unique:users, email,'.$id,
'password' => 'required|same:confirm-password',
];

numero => numeric
'email' => 'required|email|unique:clientes',


Validação via rules

Route::post('clientes', function()
{

// process the form here

// create the validation rules ------------------------
$rules = array(
'nome' => 'required|min:3|max:45',
'cpf' => 'min:11|max:11|unique:clientes',
'nascimento' => 'nullable|date|date_format:Y-m-d'
'email' => 'required|email|unique:clientes',
);

// do the validation ----------------------------------
// validate against the inputs from our form
$validator = Validator::make(Input::all(), $rules);

// check if the validator failed -----------------------
if ($validator->fails()) {

// get the error messages from the validator
$messages = $validator->messages();

// redirect our user back to the form with the errors from the validator
return Redirect::to('clientes')
->withErrors($validator);

} else {
// validation successful ---------------------------

// our cliente has passed all tests!
// let him enter the database

// create the data for our cliente
$cliente = new Cliente;
$cliente->nome = Input::get('nome');
$cliente->cpf = Input::get('cpf');
$cliente->nascimento = Input::get('nascimento');
$cliente->email = Input::get('email');


// save our cliente
$cliente->save();

// redirect ----------------------------------------
// redirect our user back to the form so they can do it all over again
return Redirect::to('clientes');

}

});

Comments fornecido por CComment

Novo Testamento

E até das cidades circunvizinhas concorria muita gente a Jerusalém, conduzindo enfermos e atormentados de espíritos imundos; os quais eram todos curados.
(At, 5:16)

Rotas no Mapa do Google

© 2015 Ribamar FS. All Rights Reserved. Designed By JoomShaper