Symfony2 - 无法在带有登录表单的页面上提交其他表单

Symfony2 - cannot submit other forms on pages with login form

当我为登录表单创建防火墙区域时,我突然无法在该页面上提交其他表单。

就我而言,在联系人页面中我有联系我们表格并且工作正常,但是当我将其添加到 security.yml 时:

firewalls:
    contacts:
        pattern:    ^/contacts
        anonymous:  ~
        provider:   main
        context:    primary_auth
        form_login:
            login_path:             /contacts
            check_path:             /contacts
            default_target_path:    /authorization
        remember_me:
            secret: '%secret%'
            lifetime: 31536000

我的联系表刚刚停止工作(无法提交)。当我按下提交按钮时 $contactForm->isSubmitted()$contactForm->isValid() 都返回 false.

主页出现同样的问题。如果我在主页的防火墙中添加登录表单配置,我的注册表单将停止工作。

也许有人遇到同样的问题并且知道解决方案?

您的配置已经将 check_path 置于防火墙之后,因此为了执行登录检查,用户必须已经登录。

将您的配置更改为 /login-check 中未包含在 pattern 中的路径:

firewalls:
    contacts:
        pattern:    ^/contacts
        # ..
        form_login:
            login_path:             /login
            check_path:             /login-check
            # ..