Switch decorator to validate

This commit is contained in:
littlewolf 2019-09-25 11:11:12 +03:00
parent d006184b14
commit 6bbbd1d6fe

View File

@ -1,7 +1,7 @@
def with_base_attributes(cls):
def create(self, validated_data):
def validate(self, data):
user = None
request = self.context.get("request")
@ -9,28 +9,13 @@ def with_base_attributes(cls):
user = request.user
if user is not None:
validated_data['created_by'] = user
validated_data['modified_by'] = user
data.update({'modified_by': user})
obj = self.Meta.model.objects.create(**validated_data)
return obj
if not self.instance:
data.update({'created_by': user})
def update(self, instance, validated_data):
user = None
request = self.context.get("request")
return data
if request and hasattr(request, "user"):
user = request.user
if user is not None:
validated_data['modified_by'] = user
obj = self.Meta.model
obj.objects.filter(pk=instance.id).update(**validated_data)
return instance
setattr(cls, "create", create)
setattr(cls, "update", update)
setattr(cls, "validate", validate)
return cls