FOSUserBundle:登录操作的两个登录模板

FOSUserBundle: two login templates for the the login action

我已经安装了FOSUserBundle。现在我想为同一个登录操作使用两个不同的模板:一个用于布局中的登录,另一个用于独立登录页面。

有什么方法可以做到这一点?

您可以保留 FOSUserBundle 中的登录表单(或通过将其移动到 app/Resources 来覆盖它)。此表单将用于独立登录页面。对于网站的其他部分,您可以自己在 twig 中创建一个新的登录表单,重要的是您的表单需要将所有字段命名为 FOSUserBundle 中的字段,并将操作路径设置为登录检查页面(因为您使用 FOSUserBundle 路径是 "fos_user_security_check").

您将在此处找到的字段名称: https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Resources/views/Security/login.html.twig

你可以看到你还需要一个生成的csrfToken。你可以在你的控制器中生成它,同样受到 FOSUserBundle 的启发:https://github.com/FriendsOfSymfony/FOSUserBundle/blob/master/Controller/SecurityController.php#L43