[英]Yii2 Model Unique Rules for combination of more than one attribute
如何在模型中為多個屬性的組合指定唯一規則? 我想要一個規則,不允許插入具有相同FIELD100
, FIELD3
的組合的記錄
return [
[['FEETYPE_F_V_R_','FIELD32','IS_CUSTOMER_EXPENSE','IS_BANK_EXPENSE','IS_BANK_EXPENSE','FIELD100'], 'required'],
[['ID', 'ACTIVE', 'APPROVED', 'REWORKED', 'IS_CUSTOMER_EXPENSE', 'IS_BANK_EXPENSE', 'IS_BANK_EXPENSE'], 'integer'],
[['AMOUNT'], 'number'],
[['REWORKEDON'], 'safe'],
[['FIELD3', 'FIELD32'], 'string', 'max' => 10],
[['FEETYPE_F_V_R_', 'FIELD24'], 'string', 'max' => 2],
[['FIELD100', 'CREATEDBY', 'APPROVEDBY', 'REWORKEDBY'], 'string', 'max' => 50],
[['CREATEDDATE', 'APPROVEDDATE'], 'string', 'max' => 7],
[['MEMOCODE'], 'string', 'max' => 20],
[['ID'], 'unique'],
];
您可以在模型中使用CompareValidator。
public function rules()
{
return [
[
'FIELD100',
'compare',
'compareAttribute' => 'FIELD3',
'operator' => '!=',
'message' => 'Both values can not be the same'
]
];
}
有關更多信息,請參閱文檔
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.