翻译管理界面中的字段

时间:2013-10-22 20:25:49

标签: django django-models django-forms django-admin

我似乎无法弄清楚如何使用这个东西:

我有这三种型号: 配方有一个ingredient_list,通过Ingredient模型由IngredientType组成。 这里是(简化)

class Recipe(models.Model):
     name = models.CharField(max_length=200)
     ingredient_list = models.ManyToManyField(IngredientType, through='Ingredient')
     difficulty =models.CharField(max_length=1,choices=DISH_DIFICULTY,
     default=INTERMEDIATE)
     cuisine = models.ManyToManyField(Cuisine, related_name='+', null=True,
     blank = True)

class Ingredient(models.Model):
     ingredient_type = models.ForeignKey(IngredientType)
     class Meta:
         app_label = 'vcb'
         verbose_name = _('Ingredient')
         verbose_name_plural = _('Ingredients')

     def __unicode__(self):
         return ''

class IngredientType(models.Model):
     name = models.CharField(max_length=200)
     plural_name = models.CharField(max_length=200)
     class Meta:
          app_label = 'vcb'
          verbose_name = _('Ingredient Type')
          verbose_name_plural = _('Ingredient Types')

     def __unicode__(self):
         return self.name

现在在我的食谱管理员中我有:

 class IngredientInline(admin.TabularInline):
    model = Ingredient
    extra = 0  

 class RecipeAdmin(admin.ModelAdmin):
    inlines = [IngredientInline]

我的问题是所有字段,包括我的管理表单中的“成分”标签都没有被翻译。 我已经在LC_MESSAGES-> django.po中为所有IngredientTypes对象和所有其他字段指定了翻译,但是在打开admin api或成分列表时,它们都是英文的。 (我编译了翻译并同步了它们。)

我尝试过django-modeltranslation方法,却发现它无法与manyTomany Field一起使用。 我应该添加一个form.py吗?我现在一直在使用django默认值,但如果这是领先者,请告诉我。

非常感谢帮助, Nitzan

0 个答案:

没有答案