Как я могу заставить Gedmo\Timestampable сохранять update_at null при первом создании?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как я могу заставить Gedmo\Timestampable сохранять update_at null при первом создании?

Сообщение Anonymous »

У меня есть приложение Symfony 2.8, которое использует аннотации Gedmo\Timestampable для автоматических операций create_at и update_at, но, похоже, оно помещает одну и ту же метку времени в столбец update_at при первом создании объекта/строки. UPDATE приводит к тому, что столбец update_at отображает более новую метку времени, но я хочу, чтобы она изначально была пустой.

Насколько я понимаю, при INSERT только столбец create_at должен быть заполнен меткой времени, а обновленный_at должен оставаться пустым, поскольку он не обновлялся как таковой. Только после первого обновления столбца он должен получить значение времени обновления.

Правильно ли я этого ожидаю? Что-то не так с моим кодом/конфигурацией? Или эта аннотация фактически задает значения для обоих столбцов?

Мой config.yml:

Код: Выделить всё

...
stof_doctrine_extensions:
default_locale: "%locale%"
translation_fallback: true
orm:
default:
translatable: true
timestampable: true
...
Моя сущность:

Код: Выделить всё

...
/**
* An automatic timestamp of the creation.
*
* @var \DateTime $createdAt
* @Gedmo\Timestampable(on="create")
* @ORM\Column(name="created_at", type="datetime")
*/
public $createdAt;

/**
* An automatic timestamp of the updation.
*
* @var \DateTime $updatedAt
* @Gedmo\Timestampable(on="update")
* @ORM\Column(name="updated_at", type="datetime")
*/
protected $updatedAt;
...
В таблице эти два столбца определены как DATETIME, и у них нет предложений по умолчанию.

Подробнее здесь: https://stackoverflow.com/questions/396 ... rst-create
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»