Php Yii不允许插入相同的数据

Php Yii不允许插入相同的数据,php,yii,Php,Yii,我正在使用yii框架。我提出了一个条件,不允许用户插入相同的数据 这是我的密码 模型 此代码用于不允许用户插入相同的数据。但是当他们编辑/更新数据时,它总是说数据是存在的。我需要让用户可以编辑,但不能只插入相同的数据 谢谢解决方法可以是: public function cekPK() { if ($this->isNewRecord) { $model = self::findByPk(array($this->DEP_CD)); i

我正在使用yii框架。我提出了一个条件,不允许用户插入相同的数据

这是我的密码

模型

此代码用于不允许用户插入相同的数据。但是当他们编辑/更新数据时,它总是说数据是存在的。我需要让用户可以编辑,但不能只插入相同的数据


谢谢

解决方法可以是:

public function cekPK()
{
    if ($this->isNewRecord)
    {
        $model = self::findByPk(array($this->DEP_CD));
        if ($model)
            $this->addError('field1', 'Data sudah ada');
    }
}

如果我想这样做,但有两个条件,比如:我想在2017年8月1日和2017年8月5日之间确定新的日期。用户可以插入一个相同的日期,只要两个日期不相同。代码的工作原理是一样的吗?谢谢@paulI,我想知道您的
DBMS
是否会引发异常,因为
DEP_CD
是主键,并且是重复的@练习生
public function cekPK()
{
    if ($this->isNewRecord)
    {
        $model = self::findByPk(array($this->DEP_CD));
        if ($model)
            $this->addError('field1', 'Data sudah ada');
    }
}