Как переводить поля в моделях django
Я пытаюсь перевести поля в модели следующим образом:
моя модель:
class CompletedWork(models.Model):
period = models.ForeignKey(directory.Period,
on_delete=models.SET('deleted date'),
verbose_name=_("Period"),
)
worker = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.SET('deleted worker'),
related_name='worker_do',
verbose_name=_('Worker'),
default=settings.AUTH_USER_MODEL
)
work_done = models.ForeignKey(directory.WorksType,
on_delete=models.SET('deleted works type'),
verbose_name=_('Work done')
)
work_scope = models.FloatField(_("Work scope"), blank=True, null=True)
work_notes = models.CharField(_("Comments"), max_length=70, blank=True, null=True, )
record_author = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.SET('deleted user'),
related_name='record_author', auto_created=True,
)
record_date = models.DateTimeField(auto_now=True)
checked_by_head = models.BooleanField(default=False)
active = models.BooleanField(default=True)
Я не понимаю, почему поля worker и work_done не переводятся. в моей локали:
msgid "Add record"
msgstr "Додати запис"
msgid "Period"
msgstr "Період"
msgid "Worker"
msgstr "Працівник"
msgid "Work done"
msgstr "Виконана робота"
msgid "Work scope"
msgstr "Обсяг роботи"
Так я вижу, что:
period - translated
worker - not translated
work_done - not translated
work_scope - translated
work_notes - translated
В документации сказано, что вы можете отметить имена отношений ForeignKey, ManyToManyField или OneToOneField как переводимые, используя их опции verbose_name:
class MyThing(models.Model):
kind = models.ForeignKey(
ThingKind,
on_delete=models.CASCADE,
related_name='kinds',
verbose_name=_('kind'),
)
Почему это не работает в моей ситуации?
