Django shell - некоторые наборы запросов пустые в оболочке, но они не должны быть пустыми

Я использую оболочку django shell для просмотра некоторых наборов запросов. Я могу получить все объекты Student с помощью .all(), но если я затем пытаюсь получить один объект с помощью .get() или фильтровать по полю, я получаю пустые результаты. Проект вроде бы нормально работает в браузере (я все еще нахожусь в процессе написания всех тестов, но функционально он работает). Я могу успешно использовать get() или filter на поле с моей Objectiveмоделью.

Вот что я получаю с all():

>>> from gradebook.models import Student, Objective
>>> s = Student.objects.all()
>>> for i in s:
...     print(i.student_first)
...
 John
 Sally
 Keith
 Terrance
 Henry
 Analise
 Ron
>>>

Теперь, если я попытаюсь использовать get():

>>> qs = Student.objects.get(student_first='Analise')
Traceback (most recent call last):
gradebook.models.Student.DoesNotExist: Student matching query does not exist.

Или фильтр по полю:

>>> s.filter(student_first='Ron')
<QuerySet []>
>>>

Модель студента

class Student(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    user = models.OneToOneField(
        settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    student_first = models.CharField(max_length=30)
    student_last = models.CharField(max_length=30)
    nickname = models.CharField(max_length=31)
    fullname = models.CharField(max_length=60)
    attend = models.BooleanField(default=True)
    student_number = models.IntegerField()
    email = models.EmailField(max_length=50)

    def __str__(self):
        return self.fullname
Вернуться на верх