Несколько множественных переменных в интернационализированном шаблоне django
Я интернационализирую (i18n) наш проект django, т. е. добавляю {% blocktrans %}
к нашим шаблонам. Я знаю, как использовать count
и {% plural %}
, чтобы иметь разные строки для varaibles. Однако у меня есть строка, которая имеет две переменные, каждая из которых должна быть множественной, т. е. 4 возможных варианта.
Например, моя строка "You have {{ num_unread }} unread message{{ num_unread|pluralize }} out of {{ total }} total message{{ total|pluralize }}"
Как я могу преобразовать это в теги blocktrans
?
1 ответ:
Проведя еще несколько исследований и прочитав, в частности, о gettext, я не думаю, что это возможно. документация gettext позволяет управлять множественностью только одной переменной. Вероятно, есть проблемы с наличием множественного числа переменных 2, так как в арабском языке для перевода необходимо иметь 36 различных строк.
В конце концов я просто обошел свою первоначальную проблему и разделил ее на две строки.