Yii2:如何检查值在以下情况下是唯一的

Yii2 : how to check value is unique with below scenario

我的 table 及其数据

id   |type | email
1    |1    | user1@domain.com
2    |1    | user2@domain.com
3    |2    | user3@domain.com
4    |2    | user4@domain.com
5    |2    | user5@domain.com

他们有很多类型 1,2,3,4,5,..

类型 2

外,所有 TYPE 都有重复的电子邮件

但是,我想让列电子邮件仅对 type 2 唯一 使用 yii2 模型验证

您可以使用 filter 并尝试类似的操作,但未经过测试

['email', 'unique', 'targetClass' => Model::className(), 'filter' => function ($query) {
    return $query->andWhere(['type' => 2]);
}],