/** * Deletes a model * * @param Atomik_Model $model * @return bool */ public function delete(Atomik_Model $model) { if ($model->isNew()) { return false; } $builder = $model->getBuilder(); $this->_notify($builder, 'BeforeDelete', array($model)); $where = array($builder->getPrimaryKeyField()->name => $model->getPrimaryKey()); if ($this->_dbInstance->delete($builder->tableName, $where) === false) { $this->_notify($builder, 'FailDelete', array($model)); return false; } $this->_notify($builder, 'AfterDelete', array($model)); return true; }
public function afterDelete(Atomik_Model_Builder $builder, Atomik_Model $model) { $key = $builder->name . ':' . $model->getPrimaryKey(); $this->_memcache->delete($key); }
public function afterDelete(Atomik_Model_Builder $builder, Atomik_Model $model) { $primaryKey = $model->getPrimaryKey(); $db = $builder->getManager()->getDbInstance(); $tableName = $builder->tableName; $foreignFieldName = $this->_prefix($tableName) . '_' . $builder->getPrimaryKeyField()->name; $tableName = $this->_suffix($tableName); $db->delete($tableName, array($foreignFieldName => $primaryKey)); }