可以在Django Admin应用中更改字段标签吗?
正如标题所说,我想在管理应用中更改某个字段的标签。我知道有一个叫做Form.field的属性,但我该如何让我的模型或模型管理器把这个信息传递过去呢?
8 个回答
34
正如哈维尔所建议的,你可以在model.py文件中的字段里使用详细名称。下面是一个例子:
class Employee(models.Model):
name = models.CharField(max_length = 100)
dob = models.DateField('Date Of Birth')
doj = models.DateField(verbose_name='Date Of Joining')
mobile=models.IntegerField(max_length = 12)
email = models.EmailField(max_length=50)
bill = models.BooleanField(db_index=True,default=False)
proj = models.ForeignKey(Project, verbose_name='Project')
在这里,dob、doj和proj这几个字段在管理界面中会根据你给它们设置的详细名称来显示。
44
如果你的字段是一个属性(也就是一个方法),那么你应该使用短描述(short_description):
class Person(models.Model):
...
def address_report(self, instance):
...
# short_description functions like a model field's verbose_name
address_report.short_description = "Address"
112
字段的 详细名称 是在创建字段时可以选择的第一个参数。