0
我正在创建一个CakePHP应用程序,它具有包含一个名为air_id的文本框的编辑窗体。在我的表中,我使用project_id和air_id作为复合主键。因此,在更新air_id时,我需要验证唯一性。 我的表结构是这样的:在cakephp中验证字段与作用域是唯一的
project_id air_id
1 [email protected]
1 [email protected]
目前我使用cakephp3.0,我使用与范围validateUnique规则, 以下是我的代码:
$validator
->add('air_id', [
'unique' => [
'rule' => ['validateUnique', ['scope' => 'project_id']],
'provider' => 'table',
]
]);
我的控制器是这样
现在它每次都在发送验证消息。我需要的是,当我将[email protected]更改为[email protected]时,它应该引发错误,如果我将其更改为其他值,则不应引起错误。我的验证有问题吗?
你的意思是你需要为特定的project_id制作'air_id'字段吗? –
“** _现在每次将值[email protected]更改为[email protected]_**时,它都会发送验证消息”这正是预期会发生的情况,因为您的表格内容为'1,test1 @ test.com'已经存在。请用适当的详细信息更新您的问题,描述您所面临的实际技术问题。 – ndm
@ndm现在它每次都发送验证消息。我需要的是,当我将[email protected]更改为[email protected]时,它应该引发错误,如果我将其更改为其他值,则不应引起错误。 –