【问题标题】:Change the default name of relationship in django admin在 django admin 中更改关系的默认名称
【发布时间】:2011-09-23 02:11:40
【问题描述】:

我有一个多对多关系如下:

class Subtopic(models.Model):
   id = models.PositiveIntegerField(primary_key=True)
   name = models.CharField(max_length=128)

   class Meta:
      verbose_name = 'Subtopic'

   def __unicode__(self):
      return self.name

class Question(models.Model):
   qid = models.PositiveIntegerField(primary_key=True)
   subtopics = models.ManyToManyField(Subtopic)

   class Meta:
      verbose_name = 'Question'

在管理界面中,我想更改这张图片中的默认名称。

http://flic.kr/p/apx3j8

名字是Subtopic和Question这两个类的关系。 其次是 Subtopic 类的名称。 最后是问题类

Django 模型会自动生成一个中间表,即 Question_Subtopics,我不能干预这个表。

请帮助我实现它。

谢谢。

【问题讨论】:

    标签: django django-models django-admin


    【解决方案1】:

    该文本用__unicode__ 填充,类似于java 的toString()。

    class Subtopic(models.Model):
        ...
        def __unicode__(self):
            return self.name
    

    只要这样做,你就会没事的:)

    【讨论】:

    • 感谢 fceruti。但是,它是不正确的。我也填写了 unicode 但它不影响默认名称。
    猜你喜欢
    • 1970-01-01
    • 2014-06-18
    • 2013-09-02
    • 1970-01-01
    • 2020-10-17
    • 1970-01-01
    • 2021-10-02
    • 2011-02-26
    • 2018-03-06
    相关资源
    最近更新 更多