首页 > 解决方案 > Symfony 自定义表单字段类型块未呈现

问题描述

尝试在 Symfony 中构建自定义表单字段类型,但小部件块未呈现。我在同一个文件中为文本字段类型设置了一个小部件,并且正确呈现。什么会导致我的小部件找不到它的模板块?

MediaGalleryType.php

class MediaGalleryType extends AbstractType
{
    public function getParent()
    {
        return TextType::class;
    }
}

mediagallery.html.twig

{% block mediagallery_widget %}
    HTML Goes here
{% endblock %}
{% block text_widget %}
    This replaces all text type fields
{% endblock %}

树枝.yaml

twig:
    form_themes:
        - 'mediagallery.html.twig'

标签: phpsymfonytwig

解决方案


在对 Symfony 表单类型的源代码进行了更多挖掘之后,我找到了一个可以扩展的方法,它返回块前缀。

public function getBlockPrefix()
{
    return 'mediagallery';
}

推荐阅读