3

Symfony2 で次のようなフォームを作成します。

$builder
                ->add('days', 'date', array(
                    'widget' => 'choice',
                                    'format' => 'dd-MM-yyyy',
                                    'pattern' => '{{ day }}-{{ month }}-{{ year }}',
                                    'years' => range(Date('Y'), 2010),
                                    'label' => 'Inactive participants since',
                                    'input' => 'string',
                    ));

しかし、今日などのデフォルトの日付を表示したいので、フォームを印刷すると表示されます

02 - 05 - 2012

何か案が?

4

3 に答える 3

4

これは日付のために働いていますか?

 $builder
                    ->add('days', 'date', array(
                        'widget' => 'choice',
                                        'format' => 'dd-MM-yyyy',
                                        'pattern' => '{{ day }}-{{ month }}-{{ year }}',
                                        'years' => range(Date('Y'), 2010),
                                        'label' => 'Inactive participants since',
                                        'input' => 'string',
                                        'data'  => '01-01-2001'
                        ));
于 2012-05-03T12:11:39.000 に答える
1

フォームの前にデフォルトの日付を設定する必要があります。

エンティティ($entity = new Entity();)を作成するときは、次のようにデフォルト値を追加するだけです。

$entity->setDays(my_value);

また、今日の日付を追加する場合は、次のようなDateTime関数を使用できます。

$entity->setDays(new \DateTime());

私が十分に明確であることを願っています。

于 2012-05-02T15:56:03.150 に答える
0

2.1 の場合、フォームはデフォルトで今日の日付になり、次のようになります。

 $builder
                    ->add('days', 'date', array(
                        'widget' => 'choice',
                                        'format' => 'dd-MM-yyyy',
                                        'pattern' => '{{ day }}-{{ month }}-{{ year }}',
                                        'years' => range(Date('Y'), 2010),
                                        'label' => 'Inactive participants since',
                                        'input' => 'string',
                                        'data'  => date_create()
                        ));
于 2012-12-16T14:37:59.080 に答える