耐心是我的第一个问题,我的英语也很差; P
顺便说一下......我在我的网站上使用fos并且所有工作都很好,实际上我的问题是我有"页面"用树枝制作的模板,它在底部有一个号召性用语按钮,它滑动了一个隐藏的div,我想把我的注册表单放在哪里。 我设置了隐藏的div并尝试放入我的include:
{% block fos_user_content %}
{% include "FOSUserBundle:Registration:register_content.html.twig" %}
{% endblock fos_user_content %}
显然它不起作用:
变量"形式"在第2行的kernel.root_dir / Resources / JuliusUserBundle / views / Registration / register_content.html.twig中不存在
可能是出于与路由或防火墙或安全相关的某些原因? 任何人都有解决方案,建议或想法吗?
谢谢和欢呼!答案 0 :(得分:1)
正如错误所说,你需要定义'形式'您的操作中的变量,或者您可以尝试呈现FOSUser注册操作而不是此操作。
例如:
{% render(controller(FOSUserBundle:Registration:register")) %}
答案 1 :(得分:0)
如果您需要使用include,则必须将form
变量传递给包含的模板。您也可以选择从其相应的控制器渲染该模板。
所以对于第一种情况你有:
{% include("FOSUserBundle:Registration:register_content.html.twig") with {'form':form} %}
此处的表单是您从自己的控制器传递的变量。你的第二个选择是像这样呈现FOSUB模板:
{% render(controller("FOSUserBundle:Registration:register")) %}
答案 2 :(得分:0)
显然我发现使用Edge Side Includes(ESI)包含的一个很好的解决方案,这也为我提供了缓存控制方面的其他好处:
<esi:include src="http://localhost:8004/login" />