如何在Django中实现波兰语复数?

3 投票
1 回答
868 浏览
提问于 2025-04-17 17:22

我想做一些国际化的翻译,但不知道怎么在Django里实现。

比如,我想做这样的翻译PO文件示例:

#: mainwindow.cpp:127
#, kde-format
msgid "Time: %1 second"
msgid_plural "Time: %1 seconds"
msgstr[0] "Czas: %1 sekunda"
msgstr[1] "Czas: %1 sekundy"
msgstr[2] "Czas: %1 sekund"

还有这样的复数规则:

nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);

我找到了一些函数,但它们更支持英语而不是波兰语,我该如何在Django中实现呢?

def ungettext(singular, plural, number):
    return real_ungettext(singular, plural, number)

1 个回答

5

我老婆是波兰人,经过18个月的努力学习波兰语,我得说这简直不可能。开玩笑的,你试过这个吗?

https://code.google.com/p/django-pluralize-pl/

撰写回答