maybe translation context?
https://docs.djangoproject.com/en/dev/topics/i18n/translation/#contextual-markers


On Thu, Dec 22, 2016 at 9:29 PM, Fergus Cameron <[email protected]> wrote:

> I personally try to use language agnostic message IDs and translate
> everything (i.e. including English).  Your idea of appending the
> gender is along the same lines and seems logical.
>
> On 22/12/2016, Uri Even-Chen <[email protected]> wrote:
> > Hi Django users,
> >
> > How do you recommend to use Hebrew gender-related translations?
> >
> > For example, here are the choices for diet in Speedy Net (notice it's
> > currently only used in Speedy Match, but it's part of the profile of
> Speedy
> > Net):
> >
> > ```
> > class User(Entity, PermissionsMixin, AbstractBaseUser):
> > ....
> >     GENDER_FEMALE = 1
> >     GENDER_MALE = 2
> >     GENDER_OTHER = 3
> >     GENDER_CHOICES = (
> >         (GENDER_FEMALE, _('Female')),
> >         (GENDER_MALE, _('Male')),
> >         (GENDER_OTHER, _('Other')),
> >     )
> >
> >     DIET_UNKNOWN   = 0
> >     DIET_VEGAN      = 1
> >     DIET_VEGETARIAN = 2
> >     DIET_CARNIST    = 3
> >     DIET_CHOICES = (
> >         (DIET_UNKNOWN, _('Please select...')),
> >         (DIET_VEGAN, _('Vegan (eats only plants and fungi)')),
> >         (DIET_VEGETARIAN, _('Vegetarian (doesn\'t eat fish and meat)')),
> >         (DIET_CARNIST, _('Carnist (eats animals)'))
> >     )
> > ....
> >     gender = models.SmallIntegerField(verbose_name=_('I am'),
> > choices=GENDER_CHOICES)
> >     diet = models.SmallIntegerField(verbose_name=_('diet'),
> > choices=DIET_CHOICES, default=DIET_UNKNOWN)
> > ```
> >
> > And here are the translations:
> > ```
> > #: .\accounts\models.py:151
> > msgid "Vegan (eats only plants and fungi)"
> > msgstr "טבעוני/ת (אוכל/ת רק צמחים ופטריות)"
> >
> > #: .\accounts\models.py:152
> > msgid "Vegetarian (doesn't eat fish and meat)"
> > msgstr "צמחוני/ת (לא אוכל/ת דגים ובשר)"
> >
> > #: .\accounts\models.py:153
> > msgid "Carnist (eats animals)"
> > msgstr "קרניסט/ית (אוכל/ת חיות)"
> > ```
> >
> > The correct translations in Hebrew are per gender (female, male or other)
> > but in English they are the same. How do you recommend to program it? I
> > thought about adding " [female]", " [male]" or " [other]" suffixes to the
> > strings and then removing them in the English translations. But then
> > English would also require a translation. Is there a better approach? And
> > how do I write the model when this feature is gender-related?
> >
> > The same question is related to any site which has a language where the
> > text is gender-related, and a language where it is not.
> >
> > You can see the code on GitHub: https://github.com/
> urievenchen/speedy-net
> >
> > Thanks,
> > Uri.
> >
> > *Uri Even-Chen*
> > [image: photo] Phone: +972-54-3995700
> > Email: [email protected]
> > Website: http://www.speedysoftware.com/uri/en/
> > <http://www.facebook.com/urievenchen>
> > <http://plus.google.com/+urievenchen>
> >   <http://www.linkedin.com/in/urievenchen>  <
> http://github.com/urievenchen>
> > <http://twitter.com/urievenchen>
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "Django users" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to [email protected].
> > To post to this group, send email to [email protected].
> > Visit this group at https://groups.google.com/group/django-users.
> > To view this discussion on the web visit
> > https://groups.google.com/d/msgid/django-users/CAMQ2MsGv_
> fvj6ijM4rb-Y7XfQeGbPJvd38_7o_LYbiukuhxyrg%40mail.gmail.com.
> > For more options, visit https://groups.google.com/d/optout.
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/django-users.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/django-users/CAHCf7OFGAsD5dAWKOwM535U7ChftJ3LLM9BS2u%3DHPm9Oiued_Q%
> 40mail.gmail.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAFWa6t%2BwK%2BZBGuayQp8RBpfbC%3DE5QtshfJC13ANMdqru9WCENw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to