Symfony formbuilder DateTime показывает неверную дату - PullRequest
0 голосов
/ 04 июня 2018

Я хочу установить значение по умолчанию date в качестве текущей даты, но вместо текущей даты я получаю 2013.01.01.

$builder->add(
        'date',
        DateTimeType::class,
        [
            'input' => 'datetime',
            'empty_data'=> new \DateTime(),
            'date_format' => 'y-M-d H:i',
            'required' => true,])

Как установить значение даты по умолчанию в качестве текущей датыкогда я отправлю форму?и если я хочу отредактировать форму, установить эту дату на существующее значение в моей сущности?

1 Ответ

0 голосов
/ 04 июня 2018

Попробуйте построить new \DateTime() в вашей сущности.Поскольку вы не вводите текущее значение даты вручную, вам не нужно добавлять поле даты в построителе форм.

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

    /**
     * YourEntity constructor.
     *
     */
    public function __construct()
    {

        $this->setdate(new \DateTime());

    }

    /**
     * Set date
     *
     * @param \DateTime $date
     *
     * @return YourEntity
     */
    public function setdate($date)
    {
        $this->date = $date;

        return $this;
    }
...