Я создаю несколько webapp. Я не хочу, чтобы пользователь переписывал значение в базе данных, если он уже существует. Я пытаюсь проверить это с помощью поведения preSave(). Всякий раз, когда я пытаюсь получить значение из базы данных я получаю значение пользователь только что отправил в с $ _POST []Propel preSave() не может получить базу данных форм записей
public function preSave(\PropelPDO $con = null) {
$obj = new UserQuery();
//let's check if user has set the value
$type = $obj->findOneById($this->getId())->getType();
var_dump($type);// <-- here the value from database is always as user
//have just been selected in form. The value in database
//actually is NULL
//if type in database have been saved then set the current type from database
if(!is_null($type))
$this->setType($type);
return true;
}
Так что мой вопрос: Почему значение из базы данных никогда не NULL, но некоторые ИСТИНА или ЛОЖЬ пользователь выбрал форму? Это должно быть NULL, потому что в тот момент save() еще не был выполнен.