Doctrine Поле Entity BigInt сохраняется как пустое - PullRequest
0 голосов
/ 30 мая 2020

Я пытаюсь обновить объект с большим полем int, и по какой-то причине он всегда установлен как null

Ниже мой Entity

/**
 * @ORM\Table(name="change_log", indexes={@ORM\Index(name="event_log_object_id_idx", columns={"object_id"})})
 */
class ChangeLog
{
    /**
     * @var int
     *
     * @ORM\Column(name="id", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="SEQUENCE")
     * @ORM\SequenceGenerator(sequenceName="change_log_id_seq", allocationSize=1, initialValue=1)
     */
    private $id;

    /**
     * @var \DateTime
     *
     * @ORM\Column(name="event_time", type="datetimetz", nullable=false)
     */
    private $eventTime;

    /**
     * @var string
     *
     * @ORM\Column(name="description", type="string", length=255, nullable=true)
     */
    private $description;

    /**
     * @var int $objectId
     *
     * @ORM\Column(name="object_id", type="bigint", nullable=true)
     */
    private $objectId;

Проблема с $objectId

Когда я persist () и грипп sh () новый ChangeLog, $objectId никогда не сохраняется. Используя отладчик, я вижу, что объекту присвоено значение до вызова persist и flu sh, но после этого значение не сохраняется в таблице db. Все остальные поля обновлены, кроме $objectId

Я читал doctrine документы ( здесь ), что поля bigint обрабатываются как строки, поэтому я попробовал следующее, но все равно не повезло

    /**
     * @var string $objectId
     *
     * @ORM\Column(name="object_id", type="bigint", nullable=true)
     */
    private $objectId;

    /**
     * @var string $objectId
     *
     * @ORM\Column(name="object_id", type="string", nullable=true)
     */
    private $objectId;

Я совершенно застрял и не знаю, что делать.

Ценю любой / все отзывы

...