Имитация сохранения объекта Propel (не записывать в таблицы)

0

У меня есть функциональность в моем проекте, где я должен показать пользователю предварительный просмотр того, как будет выглядеть страница после отправки формы. Для предварительного просмотра я устанавливаю связанный объект propel с значениями формы и в конце не сохраняю никаких значений, поскольку это только предварительный просмотр.

Это работает, но предыдущие значения связанной таблицы удаляются, и после предварительного просмотра все связанные таблицы не восстанавливаются до их предыдущего состояния, так как я не сохраняю объект. Пожалуйста, это ошибка? Я не хочу сохранять какие-либо значения в какой-либо таблице, а просто использовать объект для показа предварительного просмотра.

Есть ли способ сделать это.

EDIT: я буду перефразировать этот вопрос. Если я не сохраню объект propel, будут ли изменения затронуты в таблицах?. Прямо сейчас, если я не сохраняю, основная таблица не затрагивается, но отношения затронуты и не восстанавливаются до старых значений, если объект не сохраняется.

Например: у меня есть две таблицы, рабочие и рабочие места с отношениями внешних ключей. Я делаю $job- > addJobsector ('someSector');

Я не сохраняю объект, но предыдущее значение в jobector удаляется и новое значение не отображается.

Спасибо

  • 0
    Как вы можете повлиять на данные в связанных таблицах, если вы ничего не сохраняете? Это может помочь, если вы разместите некоторые соответствующие фрагменты кода.
Теги:
propel
symfony1

2 ответа

1
Лучший ответ

Я решил это. Когда используются функции, начинающиеся с initTablename(), кажется, что предыдущие значения были удалены. Я просто не называю эти функции для предварительного просмотра. И не сохраняя объект, он не будет хранить данные в базе данных.

Спасибо

0

Попробуйте выполнить транзакцию: запустите транзакцию, затем сохраните все необходимые данные, покажите, что вам нужно, и откат транзакции. Итак, все, что вы делали в транзакции (сохранение, удаление), хранится в базе данных

  • 0
    Спасибо Арионе, я пробовал транзакции, но безрезультатно. Моя проблема в том, что данные в связанных таблицах оказываются затронутыми, хотя я не сохраняю объект propel в конце.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню