Laravel ValidationTrait
That package is no longer maintained, consider to use watson/validating.
, (*1)
Simples facilitador para validação de models no Laravel 4.2., (*2)
Se procura um package mais completo, considere utilizar o watson/validating, (*3)
Instalação
Adicione ao composer, (*4)
composer require vluzrmos/validation-trait 1.0
Adicione Ć lista de services providers em app/app.php, (*5)
'providers' => array(
...
...
'Vluzrmos\ValidationTrait\ValidationTraitServiceProvider',
)
Exemplos
class User extends Eloquent{
use ValidationTrait;
$rules = [
"username" => "required|unique", //Somente "unique"
"password" => "required|min:6"
];
$messages = [
"username.required" => "Nome de usuÔrio obrigatório",
"username.unique" => "JƔ existe usuƔrio cadastrado com esse nome de usuƔrio"
];
}
Agora, quando for criar/salvar uma instancia do model que não atenda aos requisitos em $rules, o save() retornarÔ false:, (*6)
$user = new User();
$user->username = Input::get("username");
$user->password = Input::get("password");
if($user->save()){
Session::flash("success", "Salvou com sucesso");
return Redirect::to("home");
}
else{
return Redirect::back()->withInput()->withErrors($user->getErrors());
}
O ValidationTrait adiciona automaticamente os campos id e deleted_at às validações "unique",
então, basta fazer "field" => "required|unique", que automaticamente, no momento da validação, serÔ modificado para "unique:table_name,field,{id|null},id,{deleted_at_column},NULL"., (*7)
Mais opções de validação em Laravel Validation Rules., (*8)