表单类型日期,默认值

时间:2015-01-26 07:23:57

标签: symfony

我想创建一个只有年份选择器的日期字段。首先,我以这样的形式创建这个字段。

->add('visitDate',
                       'date',
                        array('label' => false,
                              'translation_domain' => 'messages',
                              'required'    => false,
                              'widget'      => 'choice',
                              'input'       => 'array',
                              'years'       => range(date('Y'), 2006),
                              'months'      => range(1,12),
                              'days'        => range(1,31),
                              'empty_value' => array('month'=> 1, 'day' => 1),
                        )

隐藏树枝中的月和日字段。如果我发布我的表单,月份和日期字段会发布值" null"而不是1.

有人可以告诉我为什么会这样吗?

1 个答案:

答案 0 :(得分:0)

你似乎有一个错字

更改

                          'months'      => range(1,12),
                          'days'        => range(1,31),
                          'empty_value' => array('month'=> 1, 'day' => 1),

                          'months'      => range(1,12),
                          'days'        => range(1,31),
                          'empty_value' => array('months'=> 1, 'days' => 1),

这应该是它, 否则,如果这不起作用,如果你希望用户只选择你可以做的那一年,你就有千种方式去罗马。像

// let the user post the $year as string "2015"
$time = new DateTime();
$time->modify('first day of January '.$year);