Объект не имеет атрибута в текстовом поле в Django - PullRequest
0 голосов
/ 12 июля 2020

Я получаю сообщение об ошибке

 'Sponsor' object has no attribute 'adtag'

, когда я пытаюсь извлечь данные из поля внешнего ключа в Django.

Когда я пытаюсь извлечь данные CharField из того же модель, которая отлично работает.

Вот мои модели:

class Sponsor(models.Model):
    name = models.CharField("Name of Sponsor", max_length=120, blank=False)
    ... 
    adtag = models.TextField(name="Ad Tag")

    def __str__(self):
        return self.name

и

class Merchant(models.Model):
    name = models.CharField("Name des Betriebs", max_length=120, blank=False)
    sponsor = models.ForeignKey(Sponsor, on_delete=models.PROTECT)

    def __str__(self):
        return self.name

Я вызываю это следующим образом:

merchant = Merchant.objects.filter(id=merchant)

и

print(merchant.sponsor.adtag)

И, конечно, данные заполняются в базе данных + внешний ключ связан.

Спасибо за любую рекомендацию.

1 Ответ

0 голосов
/ 13 июля 2020

Оказывается, здесь параметр name = определяет имя поля в базе данных. Итак, он искал "Тег объявления" как имя столбца, а не adtag.

...