Python Django delete确认视图显示变量名而不是信息

Python Django delete确认视图显示变量名而不是信息,python,django,Python,Django,有人能帮我解决以下问题吗? 我有三张像贝娄一样的桌子。1和2是我的数据表。 3与1和2保持关系 1.Qa table ------------- |ID | QA | ------------- |1 |qa1 | |2 |qa2 | |3 |qa3 | ------------- a field of my Qa model tags = select2.fields.ManyToManyField(Tag, blank=True, verbose_name='T

有人能帮我解决以下问题吗? 我有三张像贝娄一样的桌子。1和2是我的数据表。 3与1和2保持关系

1.Qa table
-------------
|ID |   QA  |
-------------
|1  |qa1    |
|2  |qa2    |
|3  |qa3    |
-------------
a field of my Qa model
tags = select2.fields.ManyToManyField(Tag, blank=True, verbose_name='Tag')

2.Tag table
-------------
|ID |   Tag |
-------------
|1  |tag1   |
|2  |tag2   |
|3  |tag3   |
-------------

3.qa tag relation
---------------------
|ID |QA_ID  |Tag_ID |
---------------------
|1  |1      |2      |
|2  |1      |3      |
|3  |2      |1      |
|4  |3      |1      |
|5  |3      |2      |
|6  |3      |3      |
---------------------
编辑

质量保证模型

class Qa(models.Model):

    question_text = models.CharField(max_length=1000, verbose_name='Question')
    tags = select2.fields.ManyToManyField(Tag, blank=True, verbose_name='Tag')
    """
    And some more fields.
    """

    def __str__(self):
        return self.question_text

    class Meta:
        ordering = ("id",)
        verbose_name = 'QA data'
class Tag(models.Model):
    tag_text = models.CharField(max_length=30, unique=True, verbose_name='Tag')

    def __str__(self):
        return self.tag_text

    class Meta:
        verbose_name = 'QA Tag'
标签型号

class Qa(models.Model):

    question_text = models.CharField(max_length=1000, verbose_name='Question')
    tags = select2.fields.ManyToManyField(Tag, blank=True, verbose_name='Tag')
    """
    And some more fields.
    """

    def __str__(self):
        return self.question_text

    class Meta:
        ordering = ("id",)
        verbose_name = 'QA data'
class Tag(models.Model):
    tag_text = models.CharField(max_length=30, unique=True, verbose_name='Tag')

    def __str__(self):
        return self.tag_text

    class Meta:
        verbose_name = 'QA Tag'
※我没有qa_标签型号

如果我删除标签列表(从上面的2.Tag Table中),它将重定向到确认表。它用一些变量名显示列表,如bellow

  • 标签:标签1
    • Qa标签关系:Qa_标签对象
    • Qa标签关系:Qa_标签对象
  • 标签:标签2
    • Qa标签关系:Qa_标签对象
  • 标签:tag3
    • Qa标签关系:Qa_标签对象
    • Qa标签关系:Qa_标签对象
    • Qa标签关系:Qa_标签对象
我真正期望的是(用户可读的信息)

  • 标签:标签1
    • Qa标签关系:qa2
    • Qa标签关系:qa3
  • 标签:标签2
    • Qa标签关系:qa1
  • 标签:tag3
    • Qa标签关系:qa1
    • Qa标签关系:qa2
    • Qa标签关系:qa3
我不明白为什么会发生这种情况以及如何解决它。任何帮助都将不胜感激

编辑2:

在Daniel Roseman的回答之后,我尝试创建一个自己的模型来处理多对多关系

class Qa_Tag(models.Model):

    def __str__(self):
        return  self.tag.tag_text 
qa模型的变化如下所示

class Qa(models.Model):
    ....

    tags = select2.fields.ManyToManyField(Tag, blank=True, through = 'Qa_Tag', verbose_name='Tag')

    ....
它显示删除时的值。但我必须在admin.py中注册Qa_标记,唯一可以分配关系的方法是通过Qa_标记视图


现在我知道了原因是我的Qa_标签表没有
\uu str_uu()
方法,但仍然不知道如何为生成的Qa_标签表编写一个模型类而不停止任何操作。

您没有显示您的模型,但是几乎可以肯定的是,您没有在Qa_tags类上定义
\uuu str\uu
方法。

谢谢您@Daniel Roseman的回复。但是我没有Qa_标签类。我需要一个吗?(我只是编辑我的问题)