Validation CakePHP 2.6验证规则对每个父项都是唯一的

Validation CakePHP 2.6验证规则对每个父项都是唯一的,validation,cakephp,cakephp-2.6,Validation,Cakephp,Cakephp 2.6,我正试图找出如何建立一个验证规则,我能举的最简单的例子就是用学生的电子邮件注册班级。我希望每个班级都能有唯一的学生电子邮件注册,但我也希望学生能够在多个班级使用相同的电子邮件注册 班级有许多学生(id、姓名、限制) 属于班级的学生(id、电子邮件、班级id) 示例场景: A班,有学生报名:abc@email.edu(如果abc@email.edu再次注册此课程,将不允许。) B班,可以让学生注册:abc@email.edu又是因为这是一门不同的课 那么,有没有一种方法可以将isUnique与另一

我正试图找出如何建立一个验证规则,我能举的最简单的例子就是用学生的电子邮件注册班级。我希望每个班级都能有唯一的学生电子邮件注册,但我也希望学生能够在多个班级使用相同的电子邮件注册

班级有许多学生(id、姓名、限制)

属于班级的学生(id、电子邮件、班级id)

示例场景:

A班,有学生报名:abc@email.edu(如果abc@email.edu再次注册此课程,将不允许。)

B班,可以让学生注册:abc@email.edu又是因为这是一门不同的课


那么,有没有一种方法可以将isUnique与另一个规则结合使用,或者这是一种自定义验证器的情况?谢谢

我想我必须在这里回答一个不同的问题,因为您的模型关联没有意义

如果任何一个学生可以参加多个课程,并且一个课程可以有多个学生,那么您的关联需要是HasandBelongTomany。那么,您的
学生
表将没有
类id
。您可以改为设置一个联接表,
classes\u students
,该表将具有
class\u id
student\u id


然后,您可以在联接表上添加验证规则,以确保没有学生两次参加同一课程。查看此问题。

明白了,我将尝试此模型关联。谢谢