Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Mais aussi sur les technos front comme React, Angular, Typescript et Javascript en général.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Utilisation de gettext en multi-domaines

0 votes

gettext utilise par défaut le domaine "messages"

J'ai besoin dans la même application de charger plusieurs domaines.

J'ai 2 répertoires translations avec chacun un domaine différent: messages-booking, message-common.

Chaque domaine contient des chaines différentes qui rassemblés sont utilisés dans le même ensemble de templates jinja.

Je n'arrive pas à charger les 2 domaines en même temps.

J'utilise Pelican avec le plugin https://github.com/getpelican/pelican-plugins/blob/master/i18n_subsites que j'ai modifié pour gérer plusieurs Thèmes dans des répertoires séparés.

C'est jinja2/babel qui gère le chargement des translations avec

from jinja2 import Environment
import gettext

# je raccourcis pour faire simple
env = Environment(...)

translations = gettext.translation('messages-common', '/home/tmpl1', ['fr'])
env.install_gettext_translations(translations, True)

translations = gettext.translation('messages-booking', '/home/tmpl2', ['fr'])
env.install_gettext_translations(translations, True)

#Le JINJA_ENVIRONMENT contient 
'extensions': ['jinja2.ext.i18n', 'jinja2.ext.with_']
demandé 3-Mar par srault95 (218 points)

J'ai oublié, le babel.cfg de chaque domaine contient:

[jinja2: **.html]
extensions=jinja2.ext.autoescape,jinja2.ext.with_
encoding = utf-8

Votre réponse

Preview

Votre nom à afficher ( en option ):
Vie privée: . Votre adresse de messagerie ne sera utilisée que pour l'envoi de ces notifications .
Vérification anti -spam:
Pour éviter cette vérification à l'avenir, Connectez vous ou inscrivez vous.
...