如何在Customer Sylius表单中添加DefaultAdress字段(symfony3)

时间:2017-01-10 16:27:01

标签: forms symfony sylius

我认为标题不是很清楚,所以我会更好地解释: 我已经编辑了CustomerRegister表单添加了几个字段,我也想添加DefaultAdress字段(defaultAdress是Customer的链接对象 - 我在CustomerObject中有一个getDefaultAdresse方法)。我想添加DefaultAddress对象中的所有字段(街道,国家等)

我不知道该怎么做......

我是否需要修改CustomerRegistrationTypeExtension以添加地址字段? 如何调用twig文件中的字段?像那样:{{ form_row(form.defaultAddress.street) }}

我没有找到解释该案例的文件。

感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

您应该像您描述的那样创建CustomerRegistrationTypeExtension。在此扩展内部,只需执行:

use Sylius\Bundle\AddressingBundle\Form\Type\AddressType;

$builder->add('defaultAddress', AddressType::class)

然后覆盖模板,您应该能够使用以下内容呈现字段或整个表单:

{{ form_widget(form.defaultAddress) }}

我建议使用我们的标准地址表单模板,只需包含它:

{% include '@SyliusShop/Common/Form/_address.html.twig' with {'form': form.defaultAddress} %}