0

我对 Django 很陌生。我有以下代码:

class ModelA(models.Model):
    name = models.CharField(max_length=30)

class ModelB(models.Model):
    name = models.ManytoManyField(ModelA)
    colour = models.CharField(max_lenght=30)

iob = ModelB.objects.filter(name=name)

现在,这很好用:

for i in iob:
    print i.colour

我想做类似的事情:

for i in iob:
    print i.name

但这肯定行不通。它输出如下:

<django.db.models.fields.related.ManyRelatedManager object at 0x30a2e50>

我想打印名称的值。我该怎么做呢?

4

1 回答 1

1

由于它是多对多,因此您需要执行以下操作:

for i in iob:
    print i.colour
    for obj_name in i.name.all()
        print obj_name.name
于 2013-06-13T17:36:36.133 回答