如何在客户 Sylius 表单中添加 DefaultAdress 字段 (symfony3)
How to add DefaultAdress fields in Customer Sylius Form (symfony3)
我觉得标题不是很清楚,所以我会解释得更好:
我已经编辑了 CustomerRegister 表单,添加了几个字段,我也想添加 DefaultAdress 字段(defaultAdress 是链接 object 到 Customer - 我在 CustomerObject 中有一个 getDefaultAdresse 方法)。我想添加 DefaultAddress object(街道、国家/地区等)
中的所有字段
我不知道该怎么做...
我是否需要修改 CustomerRegistrationTypeExtension 以添加地址字段?
如何调用我的 twig 文件中的字段?像那样:{{ form_row(form.defaultAddress.street) }}
?
我没有找到文档来解释那个案例。
感谢您的帮助!
您应该像您描述的那样创建 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} %}
我觉得标题不是很清楚,所以我会解释得更好: 我已经编辑了 CustomerRegister 表单,添加了几个字段,我也想添加 DefaultAdress 字段(defaultAdress 是链接 object 到 Customer - 我在 CustomerObject 中有一个 getDefaultAdresse 方法)。我想添加 DefaultAddress object(街道、国家/地区等)
中的所有字段我不知道该怎么做...
我是否需要修改 CustomerRegistrationTypeExtension 以添加地址字段?
如何调用我的 twig 文件中的字段?像那样:{{ form_row(form.defaultAddress.street) }}
?
我没有找到文档来解释那个案例。
感谢您的帮助!
您应该像您描述的那样创建 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} %}