vluzrmos/validation-trait

该包已被废弃,不再维护。作者建议使用https://github.com/dwightwatson/validating包。

Laravel的验证特性

v1.1.0 2014-12-26 07:23 UTC

This package is auto-updated.

Last update: 2022-02-01 12:42:47 UTC


README

该包已不再维护,考虑使用watson/validating

Latest Stable Version Total Downloads Latest Unstable Version License

用于Laravel 4.2模型验证的简单工具。

如果需要更完整的包,考虑使用watson/validating

安装

添加到composer

composer require vluzrmos/validation-trait 1.0

将服务提供者添加到app/app.php中的列表

'providers' => array(
  ...
  ...

  'Vluzrmos\ValidationTrait\ValidationTraitServiceProvider',
)

示例

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"
  ];
  
}

现在,当创建/保存一个不满足$rules要求的模型实例时,save()将返回false

$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());
}

ValidationTrait会自动将id和deleted_at字段添加到"unique"验证中,因此只需将"field" => "required|unique",在验证时将自动修改为"unique:table_name,field,{id|null},id,{deleted_at_column},NULL"。

更多验证选项请参阅Laravel验证规则