I’m working on “Writing your first Django app, part 2” and am currently on the section “Playing With The API”.
I copied the following code into models.py:
import datetime
from django.db import models
from django.utils import timezone
class Question(models.Model):
** # …**
** def was_published_recently(self):**
** return self.pub_date >= timezone.now() - datetime.timedelta(days=1)**
However, when I run in the Python shell Question.objects.all(), it doesn’t update the code with the custom string. Instead, it reads [<Question: Question object (1)>]>
What is wrong with my code? For reference, here is the entirety of my models.py code:
from django.db import models
class Question(models.Model):
** # …**
** def str(self):**
** return self.question_text**
class Choice(models.Model):
** # …**
** def str(self):**
** return self.choice_text**
class Question(models.Model):
** question_text = models.CharField(max_length=200)**
** pub_date = models.DateTimeField(“date published”)**
class Choice(models.Model):
** question = models.ForeignKey(Question, on_delete=models.CASCADE)**
** choice_text = models.CharField(max_length=200)**
** votes = models.IntegerField(default=0)**
import datetime
from django.db import models
from django.utils import timezone
class Question(models.Model):
** # …**
** def was_published_recently(self):**
** return self.pub_date >= timezone.now() - datetime.timedelta(days=1)**