PHP Laravel 5制作验证程序规则以检查是否存在具有特定类型的帐户

时间:2015-09-20 19:38:54

标签: php validation laravel laravel-5

我正在努力制定此验证规则。在我的's_accounts'表中,我有两行:acc_name(存储帐户名称)和acc_type(存储帐户类型)。在我只使用一种帐户类型之前,我创建了以下验证程序规则,以确保acc_name是唯一的:

$rules = array('acc_name' => 'unique:s_accounts,acc_name');
        $input['acc_name'] = $username;
        $validator = Validator::make($input, $rules);

        if ($validator->fails()) {
            // account already exists
        }
        else {
       // proceed
       }

既然我的应用程序可以创建两种类型的帐户,我希望它能够拥有两个具有相同acc_name的帐户,只要acc_type不同即可。为此,我需要更改此验证规则以包含$input['acc_type'] = "X";

我需要帮助的是更改规则数组,因此如果存在具有相同acc_name和acc_type的帐户,但如果acc_name具有不同的acc_type,则验证失败?

1 个答案:

答案 0 :(得分:0)

您可以将其作为附加参数添加到the unique rule

$rules = ['acc_name' => 'unique:s_accounts,acc_name,NULL,id,acc_type,x'];