Symfony 1.4 доктрина 1.2 Doctrine_Record :: postSave ()

У меня есть класс модели доктрины с крюком после сохранения:

class MyClass extends BaseMyClass
{
public function postSave($event)
{
myFunctionCache::getInstance()->remove(MyClassTable::CACHE_KEY_PREFIX);
}
}

Я хочу очистить данные redis по ключу после сохранения изменений объекта MyClass в mysql, и это работает, когда нет большой нагрузки на БД, но теперь очистка redis происходит перед применением изменений данных в mysql. Я искал причину и нашел sfFormObject :: save

try
{
$con->beginTransaction();

$this->doSave($con);

$con->commit();
}
catch (Exception $e)
{
$con->rollBack();

throw $e;
}

и ловушка postSave вызывается в doSave, но после этой фиксации. Я пытаюсь использовать postTransactionCommit, добавляя myListener к соединению, но мне это не помогло.
Затем я пытаюсь добавить собственный хук к записи доктрины и вызвать его после коммита:

{
$con->beginTransaction();

$this->doSave($con);

$con->commit();

$event = new Doctrine_Event($this, Doctrine_Event::TX_COMMIT);
$this->getObject()->postCommit($event);
}

Это также не имеет успеха. Любой совет?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]