Имитация сохранения объекта Propel (не записывать в таблицы) - PullRequest
0 голосов
/ 01 декабря 2010

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

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

Есть ли правильный способ сделать это.

РЕДАКТИРОВАТЬ : я перефразирую этот вопрос. Если я не сохраню объект propel, будут ли изменения затронуты в таблицах? Прямо сейчас, если я не сохраню, основная таблица не затронута, но отношения затронуты и не восстановлены к старым значениям, если объект не сохранен.

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

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

Спасибо

Ответы [ 2 ]

1 голос
/ 02 декабря 2010

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

Спасибо

0 голосов
/ 01 декабря 2010

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

...