Django Ошибка в производстве при ajax-запросе

Я создаю проект django и пробовал использовать руководство. Мой код работает в Development, но как только я переместил код в production, я получаю ошибки при ajax запросах. Я вижу, что ошибка происходит на уровне представлений, где я получаю ключи, а ключ - это поле с именем "text". В разработке использование этого поля для отправки тестов работает отлично, а в продакшене - нет. Я пробовал использовать pk для отправки, но он возвращает ошибки и не может создать точный экземпляр результата. Ниже приведены экземпляры и представления моей модели.

Ошибка

File "/home/django/.local/lib/python3.9/site-packages/django/db/models/query.py", line 435, in get raise self.model.DoesNotExist( quiz.models.Question.DoesNotExist: Вопрос, соответствующий запросу, не существует.

Попробуем посмотреть, что об этом говорит Django manual...

Это исключение поднимается ORM, когда ожидаемый объект не найден. Например, QuerySet.get() вызовет его, когда не будет найден объект для заданных поисков.

Попытка запуска:

for k in data_.keys():
  try:
    question = Question.objects.get(text=k)
  except Question.DoesNotExist:
    print(f'question with text "{k}" is not found')
  questions.append(question)

И проверьте, есть ли у вас этот текст в БД, выполнив SQL-запрос вручную:

select * from question where text = 'not found k';

Всегда используйте попытку... За исключением блока, когда вы хотите получить или, скорее, можете сделать

q=Question.objects.filter(a=blah, b=blah)
If q is not None
    my_q = q.first()

Get всегда будет выдавать ошибку, если ничего не видит... Filter не будет

Вернуться на верх