【发布时间】:2011-03-18 12:53:50
【问题描述】:
我使用 Django 的身份验证系统实现了用户登录/注册,但碰壁了,希望有人可以帮助我。
本网站使用 django-localeurl,目前以 3 种语言运行。
我在将登录重定向传递到正确的语言时遇到问题。 我想要做的是将当前语言传递给 LOGIN_REDIRECT_URL 变量(在 settings.py 中),而不是:
LOGIN_REDIRECT_URL = '/accounts/my_account/'
我会有类似的东西:
LOGIN_REDIRECT_URL = '/%s/accounts/my_account/' % request.LANGUAGE_CODE
这当然行不通,因为我没有将请求传递给 settings.py。
有没有一种非常简单和聪明的方法来做到这一点?它总是默认为英语,这是一个大问题。如果用户正在查看西班牙语网站,一旦他们登录,他们就会被重定向到英语:/
我有这样的语言设置:
gettext = lambda s: s
LANGUAGES = (
('pt', gettext('Portuguese')),
('es', gettext('Spanish')),
('en', gettext('English')),
)
和
LANGUAGE_CODE = 'en'
因为管理员需要是英文的。
谁能帮忙?
谢谢!
【问题讨论】:
标签: django