gpt4 book ai didi

javascript - Django 翻译 - 翻译星期几

转载 作者:行者123 更新时间:2023-11-30 14:50:29 27 4
gpt4 key购买 nike

我正在制作多语言网站,但在翻译星期几时遇到问题所以:

var day = moment().startOf("week").format('dddd')

这是简短的版本。

我试过使用 ugettext_lazy (_) -

var one = _(moment().startOf("week").format('dddd'))

但它不起作用。

完整:

var days = data.buckets.map(e => moment().startOf('week').day(1 + e.key).format('dddd'))

这是 d3/c3 格式。

我在垂直条形图中的 x 轴上使用天数(也许这很重要:))

我需要翻译所有天的名字。

最佳答案

您提供的代码示例

var one = _(moment().startOf("week").format('dddd'))

是 JavaScript。在 JS 中,更常见的是将 _ 名称用于 underscore.js 或 lodash,而不是用于翻译。这可能不是您想要的。

如果您想用 Python 进行翻译,那么您应该将已翻译的字符串作为变量提供给您的 JS 脚本。如果 仅来自 JS,那么我建议将日期数字映射到已翻译字符串的字典/对象。制作一个包含以下内容的 Django 模板:

{% load trans %}

<script>
var dayNamesMap = {
0: "{% trans 'Monday' %}",
1: "{% trans 'Tuesday' %}",
2: "{% trans 'Wednesday' %}",
// etc.
};
</script>

或者在您的 View 中执行此操作,确保已设置语言环境(参见 How Django discovers language preference ):

day_names_map = json.dumps({
date.weekday(): date.strftime('%A')
for i in range(7)
for date in [datetime.date.today() + datetime.timedelta(days=i)]
})

返回

'{"3": "Thursday", "4": "Friday", "5": "Saturday", "6": "Sunday", "0": "Monday", "1": "Tuesday", "2": "Wednesday"}'

然后将 day_names_map 添加到您的上下文中,并在您的模板中执行:

<script>
var dayNamesMap = {{ day_names_map }}
</script>

关于javascript - Django 翻译 - 翻译星期几,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48201475/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com