首页 文章

FOSUserBundle如何通过检查同一页面进行表单登录?

提问于
浏览
0

我想使用FOSUserBundle在我的网站上创建新的登录表单 . 问题是我不知道如何连接登录页面和检查页面...

我创建了登录表单:

<form action="{{ path("fos_user_security_check") }}" method="post">
  <input type="hidden" name="_csrf_token" value="{{ csrfToken }}" />

  <input type="text" name="_username" id="email" placeholder="Username" />
  <input type="password" name="_password" id="password" placeholder="Password" />
  <input type="checkbox" name="_remember_me" id="remember-me" />

  <input class="button" type="submit" name="_submit" value="Login!" />
</form>

我的security.yml:

security:
    firewalls:
        main:
            pattern: ^/
            form_login:
                login_path: fos_user_security_login
                check_path: fos_user_security_check
                provider: fos_userbundle
                csrf_provider: form.csrf_provider
                default_target_path: /
            logout:
                path: fos_user_security_logout
                target: my_bundle__homepage
            anonymous:    true

如果一切都很好,那么Symfony会在主页上重定向我 - 没关系 . 但是当用户输入错误的用户名和密码时,Symfony会将其重定向到默认的FOSUserBundle检查登录页面( fos_user_security_check ) . 我想更改它并在登录页面上显示错误消息,但我不知道该怎么做...任何想法?

1 回答

  • 1

    你只需要设置一条路线:

    failure_path
    

    form_login 部分

相关问题