Django - 如何在其管理模块中访问模型的verbose_name?

Siv*_*lam 26 django django-admin

如何verbose_name在其管理模块中访问模型?如果我们有一个如下所示的模型实例,我们可以访问相同的内容.

instance._meta.verbose_name.title()
Run Code Online (Sandbox Code Playgroud)

all*_*ait 48

Model._meta.verbose_name.title()

Model._meta.verbose_name_plural.title()

因此返回单数和复数模型的详细名称.还有Model._meta.verbose_name_raw属性,它似乎为我返回unicode字符串,同时verbose_name.title()返回一个普通的字符串,但我不确定这和它之间的真正区别是什么verbose_name.title().


小智 5

Model._meta.verbose_name.title()返回具有“第一个字符为大写”的详细名称,而Model._meta.verbose_name_rawproperty返回您在模型类中编写的详细名称。

  • .title() 只不过是 str 方法。因此我们可以访问 Model._meta.verbose_name (不带 .title())。该名称被翻译为 django.utils.translation.get_language() (当然:如果您已使用 gettext 定义了它)。Model._meta.verbose_name_raw 将返回源中的原始文本,而不进行任何翻译。 (2认同)