如何从django管理面板中删除额外的"s"?

Rah*_*thi 7 python django django-models

在django admin中我的班级名称之后添加的额外"s"让我非常恼火,例如我的model.py中的"关于"类在管理部分变为"关于".我希望它不要添加额外的's'.这是我的model.py文件 -

class About(models.Model):
        about_desc = models.TextField(max_length=5000)

        def __unicode__(self):              # __str__ on Python 3
                return str(self.about_desc)
Run Code Online (Sandbox Code Playgroud)

请有人建议我django如何解决我的问题.

Abh*_*ain 17

您可以添加Meta模型中调用的另一个类来指定多个显示名称.例如,如果模型的名称是Category,则显示管理员Categorys,但通过添加Meta类,我们可以将其更改为Categories.

我已更改您的代码以解决此问题:

class About(models.Model):

    about_desc = models.TextField(max_length=5000)

    def __unicode__(self):              # __str__ on Python 3
        return str(self.about_desc)

    class Meta:
        verbose_name_plural = "about"
Run Code Online (Sandbox Code Playgroud)

有关更多Meta选项,请参阅https://docs.djangoproject.com/en/1.8/ref/models/options/


Mat*_*our 5

看一下django文档中的Model Meta.

在模型中,您可以添加class Meta此选项,允许您的模型使用其他选项来处理单数和复数命名等内容.

这可以通过以下方式使用(在英语中我们没有羊)因此verbose_name_plural可以用来覆盖djangos尝试复数词:

class Sheep(model.Model):
    class Meta:
        verbose_name_plural = 'Sheep'
Run Code Online (Sandbox Code Playgroud)