Symfony2&;细枝主题文件上传小部件

Symfony2&;细枝主题文件上传小部件,symfony,twig,Symfony,Twig,我有一个Symfony2编辑表单用于实体,其中一个字段用于用户的个人资料图片 我正在尝试设置细枝文件上传小部件的主题,以便在文件输入上方显示字段的当前图片集 到目前为止,我已经: {% form_theme edit_form _self %} {% block field_widget %} {% set type = type|default('text') %} {% if type == 'file' %} <img src="{{ value }

我有一个Symfony2编辑表单用于实体,其中一个字段用于用户的个人资料图片

我正在尝试设置细枝文件上传小部件的主题,以便在文件输入上方显示字段的当前图片集

到目前为止,我已经:

{% form_theme edit_form _self %}
{% block field_widget %}
    {% set type = type|default('text') %}

    {% if type == 'file' %}
        <img src="{{ value }}" /> 
    {% endif %}

    {{ block('form_widget_simple') }}
{% endblock %}
{%form\u主题编辑\u form\u self%}
{%block field_widget%}
{%set type=type | default('text')%}
{%if type='文件“%”
{%endif%}
{{block('form_widget_simple')}
{%endblock%}
除了value变量为空(我想这是有道理的)之外,所有这些都可以正常工作

我的问题是如何获得文件的路径?有没有办法从字段的表单值中选择它?我可以把它作为一个选项传递给现场吗


Srz如果这是一个愚蠢的问题,对Symfony和Twig来说仍然是一个新问题。

所以我在谷歌上搜索Symfony的东西看起来很糟糕。我最终找到了Symfony食谱的这一部分:


Symfony2称之为表单类型扩展,他们实际上使用向文件小部件添加图像标记作为示例。

定制文件小部件的更好方法是

{% block file_widget %}
    {% spaceless %}
     //Your custom content here
    {% endspaceless %}
{% endblock file_widget %}
例如:

{% block file_widget %}
    {% spaceless %}
     <td>{% set type = type|default('file') %}
         <input type="{{ type }}" {{ block('widget_attributes') }} />
     </td>
    {% endspaceless %}
{% endblock file_widget %}
{%block file\u widget%}
{%spaceless%}
{%set type=type | default('file')%}
{%endspaceless%}
{%endblock文件\小部件%}

请记住,{%spaceless%}非常重要

只需以更明显的方式指向解决方案的新url即可:


我想他们已经删除了这个例子。我在中找到了它,我看到默认模板中也使用了
spaceless
。但我仍然不知道为什么它很重要。要详细说明吗?@Taylan将从结果输出中删除空白。这应该没什么大不了的,但我看到了一些奇怪的行为,甚至在不使用它的情况下不起作用。这是twig说的话,但再一次,即使只是关于删除空格,我也有奇怪的行为。