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

Django跨应用传递ugettext_lazy标记的消息时翻译失效问题求助

Django跨应用传递ugettext_lazy标记的消息时翻译失效问题求助

大家好,我最近碰到个棘手的Django翻译问题,想请教下各位大佬。我现在在维护两个第三方开发的Django应用:一个是负责前端UI的app-ui,另一个是后端服务app-api。

app-api用了Django的消息翻译机制,默认语言是英语,原作者已经完成了意大利语的翻译,对应的翻译文件存在app-api/apps/sub_app1/locale/it/LC_MESSAGES/django.po里。代码里标记需要翻译的消息用的是ugettext_lazy,导入方式是:

from django.utils.translation import ugettext_lazy as _

另外,app-api里还有几个子应用,其中sub_app1的models.py文件里定义了模型,同时写了一些数据验证逻辑,比如下面这段:

if client.status != ACTIVE:
    raise ValidationError(_(f'customer {customer.name}...'))

现在的问题是,当这个验证错误信息从app-api传递到app-ui之后,翻译就失效了——本该显示意大利语的消息,要么还是英语原文,要么就是没被正确解析的字符串。有没有朋友遇到过类似的跨应用传递翻译消息失效的情况?求指点解决办法!

备注:内容来源于stack exchange,提问作者Tms91

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.17 08:45:27