我想创建一个只有年份选择器的日期字段。首先,我以这样的形式创建这个字段。
->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.
有人可以告诉我为什么会这样吗?
答案 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);