В моей CMS должен быть реализован контроль версий для каждой публикации. С Symfony 1.4 и доктриной 1.2.4 я нашел решение Вот для хранения истории изменений таблицы сообщений. Когда Post был обновлен, Doctrine делает копию в таблице PostVersion. Это здорово для контроля версий, но у меня большая проблема!
Когда сообщение отображается для внешнего пользователя, оно обновляет столбец «total_view», и также будет работать Versionable Behavior. Что произойдет, когда 10.000 пользователей прочитают этот пост? У меня будет 10.000 записей в таблице PostVersion. О нет!!!
Как заставить Doctrine 1.2 запускать Versionable Behavior при обновлении некоторых полей? может быть «title», «content», а не «total_view», «total_like» …
Там в excludeFields
опция:
Post:
actAs:
Versionable:
excludeFields: [ total_view ]
Других решений пока нет …