1

日時を取得してデータベースに追加するにはどうすればよいですか? (Bundle/Form/ClassType.php) にフォームタイプビルダーがあります

$registered = date('Y-m-d');

$builder->add('registered', TextType::class, array(
    'label' => 'registered',
    'data' => $registered,
));     

そして、これが私のエンティティクラスです (Bundle/Entity/Class.php)

/**
 * @var \DateTime
 *
 * @ORM\Column(name="registered", type="datetime", columnDefinition="TIMESTAMP DEFAULT CURRENT_TIMESTAMP")
 */
private $registered;

問題は、これをデータベースに追加できないことです。次のようなエラーが表示されます

エラー: 文字列のメンバー関数 format() の呼び出し

何か助けはありますか?

4

1 に答える 1

0

TextType の代わりに DateType を使用する必要があります。

->add('registered', DateType::class, array(
            'widget' => 'single_text',
            'input' => 'string',
            'format' => 'yyyy-MM-dd',
            'data' => $registered,
            'attr' => array(
                'placeholder' => 'yyyy-MM-dd',
            )
        ))
于 2016-12-09T10:45:39.140 に答える