有一个包含city
和name
列的表格位置。
查询是:
$count=$this->Location->find("all",array("conditions" => array("Location.city" => '$city',"Location.area" => '$location')));
如果条件成立,则必须显示错误消息。
在模型中
role=>"unique"
选项在那里,但它只适用于一列。
但在上面的查询中,它取决于两列。如何为此编写验证?
答案 0 :(得分:0)
您是否尝试过read the documentation?
您可以通过提供多个字段并设置$或false来验证一组字段是唯一的:
public $validate = array(
'email' => array(
'rule' => array('isUnique', array('email', 'username'), false),
'message' => 'This username & email combination has already been used.'
)
);
确保在跨多个字段制作唯一规则时,在字段列表中包含原始字段。
如果列出的字段未包含在模型数据中,则将其视为空值。您可以考虑根据需要标记列出的字段。
答案 1 :(得分:0)
您可以在城市模型中简单地定义城市字段的验证。
public $validate = array(
/* Other fields */
...................
'city' => array(
'rule' => array('isUnique', array('city', 'area'), false),
'message' => 'City and area combination already exists.'
)
);