[英]symfony2 twig form registration included from external template
耐心是我的第一個問題,我的英語也很差; 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中不存在變量“ form”
可能由於某些原因與路由,防火牆或安全性有關? 有人對此有解決方案,建議或想法嗎?
感謝和歡呼!
正如錯誤所言,您需要在操作中定義“ form”變量,或者可以嘗試呈現FOSUser注冊操作來代替此操作。
例如:
{% render(controller(FOSUserBundle:Registration:register")) %}
如果需要使用include,則必須將form
變量傳遞給包含的模板。 (可選)您也可以從其相應的控制器渲染該模板。 因此,對於第一種情況,您有:
{% include("FOSUserBundle:Registration:register_content.html.twig") with {'form':form} %}
這里的form是從您自己的控制器傳遞的變量。 您的第二個選擇是渲染FOSUB模板,如下所示:
{% render(controller("FOSUserBundle:Registration:register")) %}
顯然,我發現了使用Edge Side Includes(ESI)包含項的好解決方案,它還為我提供了緩存控制的其他好處:
<esi:include src="http://localhost:8004/login" />
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.