【发布时间】:2014-09-23 10:08:57
【问题描述】:
我使用 Silex 和 Symfony2 Form 组件。我尝试在页面上的第一个条目上从表单对象获取默认值,因此在用户发送表单之前。我尝试这样做:
$query = $form->getData();
但在发送表单之前它是空的。另一方面,这是可行的:
$form->get('searchRadius')->getData()
它显示默认值。是否可以在不发送表单的情况下使 getData() 方法工作?或者有没有其他方法可以从我不知道的表单中获取默认值?
提前致谢。
编辑
我的问题不够清楚,所以我会尝试解决它。
我有一个控制器。在这个控制器中,我创建了一个带有一些默认值的表单。现在我尝试使用$form->getData() 获取这些值,但它什么也没返回。另一方面,当我尝试访问它的子项(即表单字段)并询问像$form->get('searchRadius')->getData() 这样的数据时,它确实返回默认值。但我想避免单独要求每个孩子获得默认值。我想询问已发送的表格。
我想在控制器中执行以下操作:
$form = $this->createForm();
$defaultValues = $form->getData();
感谢您的宝贵时间和建议。
【问题讨论】:
-
我最终从实体创建了表单。这样 Symfony 将自动预填充数据。我说这是在 Symfony 中创建表单的正确方法,而我第一个使用默认值的想法并不好!感谢您的意见。