Проверка кода валидации в django rest framework

Я пытаюсь проверить электронную почту путем отправки кода, первый шаг - сгенерировать код, когда пользователь вводит свою электронную почту, отправить ему код по почте, затем проверить этот код и вернуть ответ. Вот как я подхожу к проблеме: Я создал модель Email_for_Verification с двумя полями (email , код), код генерируется случайным образом, я создаю экземпляр этой модели, когда пользователь вводит свой email, я отправляю сгенерированный код по электронной почте, на втором шаге пользователь вводит полученный код, и я перехожу к проверке с помощью View под названием: Verify_code. но я сталкиваюсь с ошибкой

'QuerySet' object has no attribute 'code'

У меня следующие вопросы: это верный подход? почему я сталкиваюсь с этой ошибкой?

Вот мой код:

Models.py

def generate_activation_code():
    return int(''.join([str(random.randint(0,10)) for _ in range(6)]))

class Email_for_Verification(models.Model):
    email = models.EmailField(
        max_length=100, verbose_name='email', unique=True)
    code = models.CharField(max_length=6, default=generate_activation_code)
    

Views.py

class Verify_code(APIView):
    def post(self, request):
        data = request.data
        code = data.get('code')
        email = data.get('email')
        email_for_verification = models.Email_for_Verification.objects.filter(email=email)
        if code == email_for_verification.code:
            return Response({"valid" : "Valid code", "email": email}, status=status.HTTP_404_NOT_FOUND)

Ответ отправлен в browsable api:

{
"email":"dummy@mail.com",
"code":487954
}

Обратите внимание, что я уже сгенерировал код для этого письма из панели администратора.

filter() возвращает список объектов. Вам необходимо использовать get()

models.Email_for_Verification.objects.get(email=email)
Вернуться на верх