保存在同一模型中时如何检查值是否存在

时间:2015-12-22 11:41:35

标签: cakephp-3.0

我的表结构是这样的:

id  school_id   grade_name  from_value  to_value    status 

如何在同一模型中检查用户添加的任何值不应出现在from_valueto_value中。

from_valueto_value是我的上限和下限字段,我希望在表格行中保持唯一。

任何想法的人......?

2 个答案:

答案 0 :(得分:0)

CakePHP 3.x提供validateUnique规则。

您可以添加以下规则:

$validator->add('from_value', 'unique', [
    'rule' => 'validateUnique',
    'provider' => 'table'
]);

$validator->add('to_value', 'unique', [
    'rule' => 'validateUnique',
    'provider' => 'table'
]);

答案 1 :(得分:0)

感谢@InigoFlores和@ GregSchmidt的帮助,但我通过一般的SQL查询解决了我的问题SELECT COUNT(*) AS from_val FROM table_name WHERE $this->request->data['from_value'] BETWEEN from_value AND to_value