Я выполняю CRUD, все конечные точки работают, кроме обновления (патча). Получение
KeyError at /apponboarding/app/1/
'email'
, если я передаю только поле, которое я хочу обновить. Любая помощь высоко ценится.
viewset
class AppOnboardingView(viewsets.ModelViewSet):
queryset = AppOnboarding.objects.all()
serializer_class = AppOnboardingSerializer
lookup_field='id'
authentication_classes = [SessionAuthentication, BasicAuthentication]
permission_classes = [IsAuthenticated,IsMaintainer]
сериализатор
class AppOnboardingSerializer(serializers.ModelSerializer):
class Meta:
model = AppOnboarding
fields = ['id', 'email', 'product_name', 'password']
extra_kwargs = {'password': {'write_only': True}}
def create(self, validated_data):
app_onboard = AppOnboarding(
email=self.validated_data['email'],
product_name=self.validated_data['product_name']
)
password = self.validated_data['password']
app_onboard.set_password(password)
app_onboard.save()
def save(self):
app_onboard = AppOnboarding(
email=self.validated_data['email'],
product_name=self.validated_data['product_name']
)
password = self.validated_data['password']
app_onboard.set_password(password)
app_onboard.save()