本地启动Django服务器报en-gb语言翻译文件缺失错误如何解决
问题根因
- 本次报错和SSL证书过期、psycopg2重装没有直接关联,核心错误是Django无法找到配置项
LANGUAGE_CODE指定的en-gb语言对应的翻译文件 - 通常触发该问题的场景包括:
- 重装psycopg2的过程中意外损坏了虚拟环境内Django依赖的locale翻译文件
- 项目开启了自定义国际化配置,对应的en-gb翻译文件被误删除
- 虚拟环境内的Django版本发生变动,当前安装的Django版本不自带en-gb的官方翻译文件
解决办法
按优先级依次尝试以下方案即可:
方案1:修改默认语言配置(最快生效)
打开项目根目录下的settings.py,找到LANGUAGE_CODE配置项,修改为Django原生默认支持的语言代码:
# 改为通用英文配置 LANGUAGE_CODE = 'en-us' # 如果需要使用简体中文,改为如下配置即可 # LANGUAGE_CODE = 'zh-hans'
修改后保存文件,重新执行python manage.py runserver即可正常启动。
方案2:重新安装Django修复依赖
如果业务要求必须使用en-gb作为默认语言,可通过重装Django修复缺失的翻译文件:
- 先激活项目对应的虚拟环境,卸载当前已安装的Django:
pip uninstall django
- 重新安装和项目原有版本一致的Django(已知原版本号可直接指定,比如原版本为3.2.15则执行
pip install django==3.2.15,不知道版本号直接安装最新稳定版即可):
pip install django
- 重装完成后重新启动项目即可。
方案3:手动生成自定义翻译文件
如果重新安装Django后仍报错,说明项目开启了自定义国际化配置,执行以下命令生成缺失的翻译文件:
- 激活虚拟环境,在项目根目录依次执行:
python manage.py makemessages -l en_GB python manage.py compilemessages
- 命令执行完成后重启项目即可。
内容的提问来源于stack exchange,提问作者Peterkm
相关产品推荐
相关产品推荐

