我是Symfony2的初学者,我希望社区能够帮助我和另一些人解决这个问题。Symfony2 + Twig:无法访问“body”块之外的表单行吗?
我有2个表单发送到视图,我把这2个渲染成2个不同的块(main-col和left-col),实际上main-col包含用户配置文件表单,left-col包含要上传的表单资料图片..这样的轮廓图像也不会出现
但当资料图片是进入主-COL(体块),它的工作原理...
有更好的理解一些例子:
这个例子不起作用:
{% extends 'FOOBAR\QuoteMachineBundle::base.html.twig' %}
{% block menu -%}
{% include 'FOOBAR\QuoteMachineBundle::CompanyProfile/menu.html.twig' %}
{% endblock %}
{% block title -%}Edit company{% endblock %}
{% block leftcol -%}
<h3>Company Logo</h3>
{{ form(picture_form) }}
Current Picture :<br/>
<img class="opttool" src="{{ entity.pictureWebPath }}" alt="" />
{% endblock %}
{% block body -%}
{{ form(form) }}
{% endblock %}
但这种人会
{% extends 'FOOBAR\QuoteMachineBundle::base.html.twig' %}
{% block menu -%}
{% include 'FOOBAR\QuoteMachineBundle::CompanyProfile/menu.html.twig' %}
{% endblock %}
{% block title -%}Edit company{% endblock %}
{% block leftcol -%}
{% endblock %}
{% block body -%}
{{ form(form) }}
<h3>Company Logo</h3>
{{ form(picture_form) }}
Current Picture :<br/>
<img class="opttool" src="{{ entity.pictureWebPath }}" alt="" />
{% endblock %}
我换了“当前图片的形式”从leftcol身体......其实形式只适用于基体块。
我应该准确地说我可以使用正常的变量到左边的block中,这样可以工作。 在leftcol的形式将与独生子女元素的“空”的形式元素:
<input type="hidden" name="_method" value="PUT">
我怎样才能正确地呈现picture_form到leftcol块?
编辑:就像你问,我发表了我的base.html.twig
<!DOCTYPE html>
<html>
<head>
...
</head>
<body>
<div class="container">
{% if block('leftcol') is not empty %}
<div class="left-col">{% block leftcol %}{% endblock %}</div>
{% endif %}
<div class="col-main">
<h1>{{ block('title') }}</h1>
<article>
{% block body %}{% block fos_user_content %}{% endblock fos_user_content %}{% endblock %}
</article>
</div>
{% if block('rightcol') is not empty %}
<div class="right-col">{% block rightcol %}{% endblock %}</div>
{% endif %}
</div>
</body>
</html>
感谢的样本!
请张贴base.html.twig你正在延伸。 – 2014-09-28 11:51:37
这可能与leftcol块有关。你可以请你发布你的部分base.html.twig你定义leftcol块吗? – herr 2014-09-29 13:19:05