如何验证Laravel 4中两列的唯一性?

时间:2013-08-27 12:46:24

标签: mysql laravel laravel-4 php-5.3

如何验证Laravel 4中两列的唯一性?

假设first_namelast_name是两列。我想查看first_name last_name将是唯一的。

2 个答案:

答案 0 :(得分:7)

有一个社区开发的软件包:https://github.com/felixkiss/uniquewith-validator

  1. 通过Composer安装它。在您的composer.json文件中,在require属性中添加:"felixkiss/uniquewith-validator": "dev-master"
  2. 在config / app.php文件中添加验证器作为提供者:'Felixkiss\UniqueWithValidator\UniqueWithValidatorServiceProvider'
  3. 最后使用如下:

    $rules = array(
        'first_name' => 'unique_with:users,last_name',
    );
    
  4. 检查package page

答案 1 :(得分:1)

您可以编写自定义验证器

http://laravel.com/docs/validation#custom-validation-rules

Validator::extend('foo', function($attribute, $value, $parameters)
{
   /*
            check whether "first_name + last_name" is unique with SQL. Pass them as  parameters 
   */
});