У меня проблема с Django. Я сделал все, как было написано в учебнике, но когда я проверяю is_valid на serializer, всегда есть false.Django rest framework serializer действителен всегда false
Вот мой код:
models.py
from django.db import models
class User(models.Model):
userId = models.CharField(max_length=100)
email = models.EmailField()
serializers.py
from .models import User
from rest_framework import serializers
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('id', 'userId', 'email')
А потом я бегу python manage.py shell
. Затем я использую такие команды, как:
from belmondoapp.models import User
from belmondoapp.serializers import UserSerializer
u = User(userId="user", email="[email protected]")
s = UserSerializer(data=u)
s.is_valid()
И он всегда возвращает False ... Почему? Что я не так?
Проверьте 's.errors' после вызова' s.is_valid() ' –
Кстати, я думаю, что проблема в том, что ваш' u' не имеет идентификатора (который требуется вашим сериализатором). Сначала вы должны сохранить его. –
У меня есть '' {'non_field_errors': ['Неверные данные. Ожидаемый словарь, но получил User. ']} '', Вызвав s.errors –