Python Django Shell AttributeError: у объекта 'Article' нет атрибута 'title'

Я новичок в Джанго, пожалуйста, помогите выяснить эту проблему. Я пытаюсь получить привет из БД, но он не работает. Посмотрите в моей Windows Power Shell, как администрация Windows. У меня есть приложение app в моем проекте django, и там я изменил файл моделей моделей и создал базовый класс Article с заголовком, датой и полем тела. Также имеет функцию ул

Модель статьи ниже

from django.db import models

# Create your models here.
# A MODEL IS REPRESENTED BY CLASS

class Article(models.Model):
    title : models.CharField(max_length=100)
    slug  : models.SlugField()
    body  : models.TextField()
    date  : models.DateTimeField(auto_now_add=True)
    # ADD IN THUMNAILL LETTER

    def __str__(self):
        return self.title

Командная строка

Windows PowerShell

>>> from articles.models import Article
>>> Article
<class 'articles.models.Article'>
>>> Article.objects.all()
<QuerySet [<Article: Article object (1)>, <Article: Article object (2)>]>
>>> article = Article()
>>> article
<Article: Article object (None)>
>>> article.title = "hello world"
>>> article.title
'hello world'
>>> article.save()
>>> Article.objects.all()
<QuerySet [<Article: Article object (1)>, <Article: Article object (2)>, <Article: Article object (3)>]>
>>> Article.objects.all()[0].title
Traceback (most recent call last):
  File "<console>", line 1, in <module>
AttributeError: 'Article' object has no attribute 'title'

1 ответ

Вы определили вашу модель с двоеточием (:) intead равным (=) символу. Так что Ваша модель должна быть такой,

class Article(models.Model):
    title = models.CharField(max_length=100)
    slug = models.SlugField()
    body = models.TextField()
    date = models.DateTimeField(auto_now_add=True)

    # ADD IN THUMNAILL LETTER

    def __str__(self):
        return self.title


Вот ссылка на изображение,



Update-1

In [2]: # METHOD -- 1

In [3]: article_1 = Article()

In [4]: article_1.title = "my title 1"

In [5]: article_1.save()

In [6]: Article.objects.all()
Out[6]: <QuerySet [<Article: my title 1>]>

In [7]: # METHOD -- 2

In [8]: article_2 = Article.objects.create(title="my title 2")

In [9]: Article.objects.all()
Out[9]: <QuerySet [<Article: my title 1>, <Article: my title 2>]>
Другие вопросы по тегам