我正在努力制定此验证规则。在我的'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,则验证失败?
答案 0 :(得分:0)
您可以将其作为附加参数添加到the unique
rule:
$rules = ['acc_name' => 'unique:s_accounts,acc_name,NULL,id,acc_type,x'];