请看这个类:
class Product(models.Model):
name = models.Charfield(verbose_name="Product Name", max_length=255)
class Meta:
verbose_name = "Product Name"
我看了Django的文档,上面写着:
- 对于字段声明中的
verbose_name
:“字段的可读名称。” - 对于** meta**声明中的
verbose_name
:对象的可读名称,单数。
我什么时候可以在运行时看到verbose_name
清单?在表单渲染中?在Django管理中?
2条答案
按热度按时间qyuhtwio1#
Meta
中的verbose_name
处理 model 的名称,而不是该模型的字段。因此,它很可能应该是
'Product'
,而不是'Product Name'
:这样就在模型管理中指定了表名,而字段的
verbose_name
将显示在ModelForm
中,当您显示或编辑记录时。yr9zkbsy2#
字段声明中的
verbose_name
在该字段的名称(这里我们指的是名称)不足以让用户解释那个字段到底是什么。例如,也许你想向用户提供一个更完整的名称描述,假设您指的是短名称。因此,最好将verbose_name
设置为等于“短名称”。当你想在管理面板中以不同的方式向用户单独显示你的对象时,可以设置 meta声明中的name。当然,在 meta类中我们也有verbose_name_plural
。当Django不能正确识别单词的复数形式时使用它。Django通过在复数中放置s来显示单词的结尾。但这并不总是正确的。例如,假设你有一个模型叫做Child。那么,现在你最好在 meta类中将verbose_name_plural
的值设置为“children”。当你在Django中使用英语以外的语言时,上面的描述会更有用。