You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Django中set_language()设置的默认cookie名称django_language?

修改Django语言切换默认Cookie名称

要修改Django语言切换功能使用的默认django_language Cookie名称,只需在项目的settings.py配置文件中添加LANGUAGE_COOKIE_NAME参数,指定自定义名称即可,具体操作如下:

  1. 打开项目根目录下的settings.py文件
  2. 在文件中添加以下配置(将示例中的名称替换为你需要的自定义名称):
# settings.py
LANGUAGE_COOKIE_NAME = "custom_language"  # 替换为你的自定义Cookie名称

添加完成后,Django的set_language视图会自动使用这个新的Cookie名称存储用户的语言偏好,无需修改已配置的i18n路由或其他代码。

如果需要对该Cookie做更多安全或行为上的自定义,还可以添加以下相关配置参数:

  • LANGUAGE_COOKIE_SECURE:设置为True可限定Cookie仅通过HTTPS传输
  • LANGUAGE_COOKIE_HTTPONLY:设置为True可防止前端JS访问该Cookie,提升安全性
  • LANGUAGE_COOKIE_SAMESITE:可选'Strict'/'Lax'/'None',控制Cookie跨站传输规则
  • LANGUAGE_COOKIE_AGE:设置Cookie的过期时长(单位:秒,默认是会话级Cookie)

示例安全配置:

# settings.py
LANGUAGE_COOKIE_NAME = "custom_language"
LANGUAGE_COOKIE_SECURE = True
LANGUAGE_COOKIE_HTTPONLY = True
LANGUAGE_COOKIE_SAMESITE = 'Strict'

内容的提问来源于stack exchange,提问作者Super Kai - Kazuya Ito

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 14:17:00