この質問はFOSUserBundleのドキュメントで完全に回答されていることは知っていますが、それでも問題を解決することはできません。
FOSUserBundleを使用して独自のログインページを作成しようとしています。
FOSUserBundleソースに含まれているmain.html.twig
ものとまったく同じものがあります。login.html.twig
唯一の違いは、main.html.twigが私自身のバンドル構造にあり、login.html.twigがFOSUserBundleフォルダー構造にあることです。
との両方に到達/login
し/main
ます。それらを解決すると、レンダリングが開始されます。
しかし、にアクセスする/main
と、次のエラーが発生します。
Twig_Error_Runtime:変数「csrf_token」が5行目の「AcmeStoreBundle:Main:main.html.twig」に存在しません
コードはFOSUserBundleユーザーに知られていますが、とにかくここに貼り付けます。
<form action="{{ path("fos_user_security_check") }}" method="post">
<input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />
<label for="username">{{ 'security.login.username'|trans({}, 'FOSUserBundle') }}</label>
<input type="text" id="username" name="_username" value="" />
<label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
<input type="password" id="password" name="_password" />
<input type="checkbox" id="remember_me" name="_remember_me" value="on" />
<label for="remember_me">{{ 'security.login.remember_me'|trans({}, 'FOSUserBundle') }}</label>
<input type="submit" id="_submit" name="_submit" value="{{ 'security.login.submit'|trans({}, 'FOSUserBundle') }}" />
変数「csrf_token」は、FOSUserBundleの外部からはどういうわけか認識されません。または私が得ていない何か他のもの。
あそこに何か手がかりはありますか?