Symfony 更改FOSUserBundle上的登录页面

Symfony 更改FOSUserBundle上的登录页面,symfony,fosuserbundle,Symfony,Fosuserbundle,我安装了FOSUserBundle,但我的设计要求登录表单出现在主页中,而不是单独的登录页面,而是包含在由我的HomeBundle:Default:index控制的主页中 所以,如果你访问一个需要登录的页面,你会被重定向到我的主页,我的登录表单就在那里 为此,我更改了vendor>friendsofsymfony>user bundle>FOS>Resources>routing>security.xml 但似乎没有错误。您可以按照中的说明覆盖模板login.html.twig 我已经完成了。您

我安装了FOSUserBundle,但我的设计要求登录表单出现在主页中,而不是单独的登录页面,而是包含在由我的HomeBundle:Default:index控制的主页中

所以,如果你访问一个需要登录的页面,你会被重定向到我的主页,我的登录表单就在那里

为此,我更改了
vendor>friendsofsymfony>user bundle>FOS>Resources>routing>security.xml


但似乎没有错误。

您可以按照中的说明覆盖模板
login.html.twig


我已经完成了。

您可以按照中的说明覆盖模板
login.html.twig


我已经完成了。

重写文件夹Resources/views/Security中的login.html.twig文件/

基本代码是:

{% extends "FOSUserBundle::layout.html.twig" %}

{% block fos_user_content %}
{% if error %}
    <div>{{ error|trans({}, 'FOSUserBundle') }}</div>
{% endif %}

<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="{{ last_username }}" required="required" />

    <label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
    <input type="password" id="password" name="_password" required="required" />

    <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') }}" />
</form>
{% endblock fos_user_content %}
{%extends“FOSUserBundle::layout.html.twig”%}
{%block fos_user_content%}
{%if错误%}
{{error}trans({},'FOSUserBundle')}
{%endif%}
{{'security.login.username'| trans({},'FOSUserBundle')}
{{'security.login.password'{}trans({},'FOSUserBundle')}
{{'security.login.memory{me'{trans({},'FOSUserBundle')}
{%endblock fos_user_content%}

重写文件夹Resources/views/Security中的login.html.twig文件/

基本代码是:

{% extends "FOSUserBundle::layout.html.twig" %}

{% block fos_user_content %}
{% if error %}
    <div>{{ error|trans({}, 'FOSUserBundle') }}</div>
{% endif %}

<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="{{ last_username }}" required="required" />

    <label for="password">{{ 'security.login.password'|trans({}, 'FOSUserBundle') }}</label>
    <input type="password" id="password" name="_password" required="required" />

    <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') }}" />
</form>
{% endblock fos_user_content %}
{%extends“FOSUserBundle::layout.html.twig”%}
{%block fos_user_content%}
{%if错误%}
{{error}trans({},'FOSUserBundle')}
{%endif%}
{{'security.login.username'| trans({},'FOSUserBundle')}
{{'security.login.password'{}trans({},'FOSUserBundle')}
{{'security.login.memory{me'{trans({},'FOSUserBundle')}
{%endblock fos_user_content%}

也不要忘记重写getParent方法。正如文件所说

<?php

namespace Acme\UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;
class AcmeUserBundle extends Bundle
{
    public function getParent()
   {
    return 'FOSUserBundle';
   }
}

?>

也不要忘记重写getParent方法。正如文件所说

<?php

namespace Acme\UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;
class AcmeUserBundle extends Bundle
{
    public function getParent()
   {
    return 'FOSUserBundle';
   }
}

?>

的链接以及和的链接