[afpy/django] Model translation

Marc DEBUREAUX marcdebureaux at gmail.com
Jeu 26 Fév 16:54:45 CET 2015


Bonjour,

Vous pouvez utiliser l'outil de localisation fourni avec Django qui
fonctionne de la même manière dans le code que dans les templates pour la
génération du fichier de traduction.

from django.utils.translation import ugettext_lazy as _


Il est d'usage de renommer ugettext_lazy pour plus de simplicité à
l'écriture. Vous pouvez ensuite l'utiliser dans vos modèles comme pour cet
exemple :

class BaseEntity(Entity):
    code = models.CharField(max_length=100, unique=True,
validators=[RegexValidator(r'^([A-Za-z_][0-9A-Za-z_]*)$')],
verbose_name=_("Code"),
        help_text=_("Le code doit être unique à la création, il permet
d'identifier plus facilement les données.<br/>"
                    "Il ne doit contenir que des caractères
alphanumériques et des underscores ainsi qu'aucun espace."))
    libelle = models.CharField(max_length=200, verbose_name=_("Libellé"))


En espérant que ça puisse vous aider.

Pour toutes vos questions, je vous encourage à l'avenir d'utiliser une
plateforme dédiée comme http://indexerror.net/ (équivalent de StackOverflow
francophone pour Python et Django).


Le 26 février 2015 16:47, Michael Cornelis <cornelismchl at gmail.com> a écrit
:

> Bonjour,
>
> J'ai l'habitude de faire les traductions dans les templates, mais pas avec
> les models.
> Pourriez-vous me dire comment traduire mes modèles fields?
>
> J'utilise les modelform.
>
> Ces traductions vont-elle s'ajouter un fichier .po?
>
> Merci,
>
> Michaël Cornelis
>
> _______________________________________________
> django mailing list
> django at lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.afpy.org/pipermail/django/attachments/20150226/8e247fbb/attachment.html>


Plus d'informations sur la liste de diffusion django