有一些我不喜欢的东西。我真的很讨厌它如何丑陋地渲染日期选择(有三个选择)。我没有找到方法让这些巨大的无标题选择显示符合我自己的风格(或我的网站的风格)。
所以,有两种可能性(和问题):
我知道我可以手动显示每个字段,省略我不想出现的字段。但相反呢?即告诉symfony显示所有字段,但只有一个?
答案 0 :(得分:1)
首先,Symfony允许您在日期或日期时间字段的不同小部件和格式之间进行选择。这些描述如下:http://symfony.com/doc/current/reference/forms/types/date.html#widget。
编辑字段的选项位于“YourEntityType”类中,位于“ROOT / TO / YOUR / BUNDLE / Form”目录中。
示例:
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('datefield', null, array('widget' => 'single_text'));
}
你提出的两种可能性也是可能的。
我想说你可以创建自己的字段类型,将date_time字段作为父字段。
在您的控制器中:
$form = $this->createForm(new EntityType(), $entity);
$form->remove('name of your field in the entity');
或者在EntityType类中:
public function buildForm(FormBuilder $builder, array $options)
{
$builder->add('onefiled');
$builder->add('datefield'); //this is the line you must delete
}