Я пытаюсь расширить модель пользователя с OneToOneField, так что я могу добавить больше полей для пользователя:Как получить объект атрибуты OneToOneField отношения в Django-Rest-Framework
class Userattribs(models.Model):
user = models.OneToOneField(User)
passcode = models.IntegerField(default=0)
# about user
organisation = models.CharField(max_length=100, null=True)
description = models.CharField(max_length=300, null=True)
Я также имеют следующие модели сериализаторы:
class UserattribsSerializer(serializers.ModelSerializer):
class Meta:
model = Userattribs
fields = ('organisation', 'description')
class UserSerializer(serializers.ModelSerializer):
userattribs = UserattribsSerializer(required=True)
class Meta:
model = User
fields =('id', 'username', 'first_name', 'last_name', 'email', 'userattribs')
проблема у меня в том сериализации пользователя, не включает в себя «userattribs» в ответ JSon. Я часами гулял и бил головой. Я буду вечно благодарен, если вы поможете мне.
Заранее благодарен!
Я добавил виды. Одна странная вещь, которую я заметил, это то, что когда я запросил (используя UserList) все данные, я получил бы Userattribs. Однако, когда я извлекаю один элемент, я не получаю Userattribs
###################################################
### Views #########################################
###################################################
class UserList(generics.ListCreateAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = (permissions.AllowAny,)
class UserDetail(generics.RetrieveUpdateDestroyAPIView):
queryset = User.objects.all()
serializer_class = UserSerializer
permission_classes = (access_permission,)
добавьте свои 'urls.py' и выходы' UserDetail'view, пожалуйста. Что это за переменная 'access_permission'? Комментарий permission_classes для отладки –