Symfony1 保存覆盖中/保存前的原则日期
我有一个带有日期字段“date_of_birth”(symfony form date)的Doctrine模型,该字段由用户填写,它会按照预期100%保存到db,但是在model save()方法中,我需要在保存之前检索该字段的值。我的问题是,当尝试获取日期值时,如果它是新记录,则返回空字符串;如果它是现有记录,则返回旧值Symfony1 保存覆盖中/保存前的原则日期,symfony1,doctrine,save,Symfony1,Doctrine,Save,我有一个带有日期字段“date_of_birth”(symfony form date)的Doctrine模型,该字段由用户填写,它会按照预期100%保存到db,但是在model save()方法中,我需要在保存之前检索该字段的值。我的问题是,当尝试获取日期值时,如果它是新记录,则返回空字符串;如果它是现有记录,则返回旧值 public function save(Doctrine_Connection $conn = null) { $dob = $this->getDate
public function save(Doctrine_Connection $conn = null)
{
$dob = $this->getDateOfBirth(); // returns empty str if new and old value if existing
$dob = $this->date_of_birth; //also returns empty str
return parent::save($conn);
}
在原则1.2中保存数据之前,如何检索此字段的值您可以覆盖伪事件:
// In your model class
public function preSave($event) {
$dob = $this->getDateOfBirth();
//do whatever you need
parent::preSave($event);
}
通常,条令中的伪事件使用“新”值,但是有getModified()方法,它正是您所需要的
$modifiedFields = $this->getModified(true);
if(isset($modifiedFields['date_of_birth'])) { //index is available only after change
echo $modifiedFields['date_of_birth']; //old value
}
链接已断开…:/还有,卡洛斯,没有必要对我投反对票,因为条令计划在过去的几年里(现在已经6年半)没有保持他们的联系