Как решить: AttributeError: у объекта 'QuerySet' нет атрибута 'name' - PullRequest
0 голосов
/ 25 января 2020

Как решить: AttributeError: у объекта 'QuerySet' нет атрибута 'name'

models.py

from django.db import models


class Real(models.Model):
    name = models.CharField(max_length=200, default='')
    f_name = models.CharField(max_length=300, default='')

    def __str__(self):
        return self.name


>>> from real.models import Real
>>> list = Real.objects.all()
>>> list
<QuerySet [<Real: Umair Khan>, <Real: Uzair Khan>, <Real: Anas>]>
>>> list.name
Traceback (most recent call last):
  File "<console>", line 1, in <module>
AttributeError: 'QuerySet' object has no attribute 'name'
>>>

1 Ответ

1 голос
/ 26 января 2020

Ссылка на поле в модели невозможна для Queryset, но для экземпляра модели. Поэтому попробуйте это:

    for real in list:
        print(real.name)

Или, если вы хотите список имен, попробуйте следующее:

    [real for real in list.values('name')]

Это вернет список словаря, т.е.

    [ {'name': name}, ...]
...