由于警报字段是一个布尔值,我声明了这样的形式:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('message', 'text', array('label' => "Message"))
->add('alert', 'choice', array(
'choices' => array(1 => 'Yes', 0 => 'No'),
'expanded' => true,
'multiple' => false,
'label' => "Are you agree?",
'attr' => array('class' => 'well')
));
}
它在我创建新条目时有效,但是当我尝试编辑条目时,存储在数据库中的“警报”选项未在表单中设置(单选按钮).
如何在表单中设置字段的数据库状态?
解决方法:
你有两个选择.
尝试使用formbuilder中的data属性.
$builder
->add('message', 'text', array('label' => "Message"))
->add('alert', 'choice', array(
'choices' => array(1 => 'Yes', 0 => 'No'),
'expanded' => true,
'multiple' => false,
'label' => "Are you agree?",
'data' => $entity->getAlert(),
'attr' => array('class' => 'well')
));
要么:
在symfony中创建表单时,通常会将数据实体传递给该表单.此自动填充所有值.
$this->createForm(new FormType(), $entity);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。