2010-03-18 65 views
0

你好,我需要有我的django管理应用程序的多语言支持。我可以创建messege files.But如何更改我的模型的文本。标题,字段等。我只能够改变静态元素在我的模板中。django国际评论

这里就是比如我班的

class Mymodel(model.Models): 
     id=models.IntegerField(primary_key=true) 
     name=models.CharField(max_length=200) 
     group=models.CharField(max_length=200) 

     class Meta: 
      managed=False 
      verbose_name_plural='My admin' 
      db_table='my_admin' 

一个更多的则是显示我的详细名称“我的管理员”我mentioned.But当我去列表页question.In我的主页它让我看到类名称“mymodel'.Why so.Can我改变了对

回答

0

可以作为这样的第一个参数的字段通过‘名字’:

class Event(models.Model): 

    name = models.CharField('name', max_length=50, unique=True) 
    start = models.DateTimeField('start') 
    end = models.DateTimeField('end') 
    ressource = models.ForeignKey(Resource, related_name='events') 

如果要国际化,你只需要使用的gettext-LIB从Django中是这样的:

from django.utils.translation import ugettext_lazy as _ 

class Event(models.Model): 

name = models.CharField(_('name'), max_length=50, unique=True) 
start = models.DateTimeField(_('start')) 
end = models.DateTimeField(_('end')) 
ressource = models.ForeignKey(Resource, related_name='events') 
+0

这是行不通的,如果我有如下 head_name = models.CharField(字段名_ ('head ame'),max_length = 200) 在我的.po文件中,它添加了#fuzzy字段名称之前,它不转换它。 但是,如果我用ugettext和提我场像 head_name = models.CharField(ugettext( “HEADNAME”),MAX_LENGTH = 200) ,然后从.po文件它工作正常删除#fuzzy。 – ha22109 2010-03-19 13:27:45