【问题标题】:Is it possible to change the model name in the django admin site?是否可以在 django 管理站点中更改模型名称?
【发布时间】:2024-06-10 16:10:01
【问题描述】:

我正在翻译一个 django 应用程序,我还想翻译 django 管理站点的主页。

在此页面上列出了应用程序名称和模型类名称。我想翻译模型类名称,但我不知道如何为模型类提供用户友好的名称。

有人知道怎么做吗?

【问题讨论】:

    标签: python django django-models django-admin


    【解决方案1】:

    看看Meta optionsverbose_nameverbose_name_plural,这两个都是可翻译的。

    【讨论】:

    • 但这只会更改主页中的名称,但是当您单击链接(类)时,上部标题将显示您之前提到的类名称。 verbose_name 只会改变主页的标题
    • 在 Django 1.11 中,这确实是正确的答案。 verbose_name 出现在管理主页和每个子页面上。
    【解决方案2】:

    您应该在所有模型的 Meta 中使用 ugettext_lazy 实用程序

    from django.db import models
    from django.utils.translation import ugettext_lazy as _
    
    class Book(models.Model):
        ...
    
        class Meta:
            verbose_name = _("My Book")
            verbose_name_plural = _("My Books")
    

    【讨论】:

    • 感谢您的回答,这对我帮助很大。
    最近更新 更多