Я пытаюсь добавить поле сотрудников в свою пользовательскую модель в Django REST 2.2. Это - вот как я реализовал своего настраиваемого пользователя (первый ответ). Поле сотрудников - это просто список настраиваемых пользователей (так что оно связано с самим собой с помощью отношения «многие ко многим»).
Когда я пытаюсь добавить настраиваемую модель пользователя из интерфейса django, оно говорит: «этот список не может быть пустым». Как сделать так, чтобы оно было пустым? Я думал, что это то, что я добавил для "required = False".
введите описание изображения здесь
users / models.py
class CustomUser(AbstractUser):
employees = models.ManyToManyField("self", related_name='employees')
users / serializers.py (CustomRegisterSerializer используется для регистрации в rest-auth , CustomUserSerializer используется для просмотра и редактирования)
class CustomRegisterSerializer(RegisterSerializer):
employees = serializers.RelatedField(many=True, required=False, queryset=CustomUser.objects.all())
def get_cleaned_data(self):
data_dict = super().get_cleaned_data()
data_dict['employees'] = self.validated_data.get('employees', '')
return data_dict
class CustomUserSerializer(serializers.ModelSerializer):
class Meta:
model = CustomUser
fields = ('id', 'email', 'employees')
users / views.py
class CustomUserViewSet(viewsets.ModelViewSet):
queryset = CustomUser.objects.all()
serializer_class = CustomUserSerializer