Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:管理界面中多对多项目的名称_Python_Django_Django Models_Django Admin_M2m - Fatal编程技术网

Python Django:管理界面中多对多项目的名称

Python Django:管理界面中多对多项目的名称,python,django,django-models,django-admin,m2m,Python,Django,Django Models,Django Admin,M2m,我有一个多对多字段,显示在django管理面板中。当我添加多个项目时,它们在显示选择器中都显示为“ASGGroup object”。相反,我希望它们显示为ASGGroup.name字段设置为的任何内容。我该怎么做 我的模型看起来像: class Thing(Model): read_groups = ManyToManyField('ASGGroup', related_name="thing_read", blank=True) class ASGGroup(Model):

我有一个多对多字段,显示在django管理面板中。当我添加多个项目时,它们在显示选择器中都显示为“ASGGroup object”。相反,我希望它们显示为ASGGroup.name字段设置为的任何内容。我该怎么做

我的模型看起来像:

class Thing(Model):
    read_groups = ManyToManyField('ASGGroup', related_name="thing_read", blank=True)

class ASGGroup(Model):
    name = CharField(max_length=63, null=True)
但我看到的m2m小部件显示是:


您需要在您的模型上定义
\uuuuuUnicode\uuuuuu
(或者
\uuuuuuu str\uuuuuu
如果您使用的是Python 3)方法,因此:

class ASGGroup(Model):
    name = CharField(max_length=63, null=True)

    def __unicode__(self):
        return self.name
现在,当您的模型被解析为字符串时,它将返回模型的
名称
字段,而不是类名