簡體   English   中英

如何從 django 管理面板中刪除額外的“s”?

[英]How can i remove extra "s" from django admin panel?

我對在 django admin 中的類名后添加的額外“s”感到非常惱火,例如,model.py 中的類“About”在管理部分變為“Abouts”。 我希望它不要添加額外的“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)

請有人建議我 Django 如何解決我的問題。

您可以在模型中添加另一個名為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"

更多Meta選項,參考https://docs.djangoproject.com/en/1.8/ref/models/options/

查看 django 文檔中的Model Meta

在模型中,您可以添加class Meta這為您的模型提供了額外的選項,可以處理諸如單數和復數命名之類的事情。

這可以通過以下方式使用(在英語中我們沒有羊)所以verbose_name_plural可以用來覆蓋djangos嘗試將單詞復數化:

class Sheep(model.Model):
    class Meta:
        verbose_name_plural = 'Sheep'

model.py或在您的customized model file在模型類中添加類元。 如果未提及,則會在模型類名稱的末尾添加一個額外的 's',該名稱將在 Django 管理頁面中可見。

class TestRoles(model.Model): 
   class Meta: verbose_name_plural = 'TestRoles'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM