【问题标题】:update user session when user change locale in Symfony当用户在 Symfony 中更改语言环境时更新用户会话
【发布时间】:2021-09-27 02:22:47
【问题描述】:

在我的 Symfony 4.4 应用程序中,我创建了 UserLocaleSubscriber,它可以正常工作,但是当用户更改您的语言环境时,必须注销并登录才能更改翻译语言。我尝试使用EqutableInterface 在不注销用户的情况下更新用户会话。

public function isEqualTo(UserInterface $user)
    {
        if ($user instanceof self)
        {
            if ($user->getLocale() != $this->locale) {
                return false;
            }
        }
        return true;
    }

但是当我更改用户区域设置时,我必须注销并登录才能使用新的区域设置。是否有任何选项可以在不注销的情况下更改语言?

【问题讨论】:

    标签: symfony security translation


    【解决方案1】:

    您根本不需要注销,只需重定向到 /en 或 /es 取决于您的语言和路由。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-03
      • 1970-01-01
      • 2018-06-09
      • 1970-01-01
      相关资源
      最近更新 更多