Skip to content

Commit f9209a9

Browse files
Merge branch 'main' into evaluator-to-dependabot
2 parents 89acf11 + 86eec27 commit f9209a9

1 file changed

Lines changed: 25 additions & 0 deletions

File tree

manager/src/manager/serializers.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -830,6 +830,31 @@ class UserSerializer(NonNullSerializer):
830830
uid = serializers.CharField(source="pk", read_only=True)
831831
acls = PubSubACLSerializer(many=True, required=False)
832832

833+
def validate(self, attrs):
834+
is_update = self.instance is not None
835+
836+
if not is_update:
837+
username = attrs.get('username', None)
838+
password = attrs.get('password', None)
839+
840+
if not username or not username.strip():
841+
raise serializers.ValidationError({'username': ['This field is required.']})
842+
if not password:
843+
raise serializers.ValidationError({'password': ['This field is required.']})
844+
845+
else:
846+
if 'username' in self.initial_data:
847+
username = attrs.get('username', '')
848+
if not username or not username.strip():
849+
raise serializers.ValidationError({'username': ['This field may not be blank.']})
850+
851+
if 'password' in self.initial_data:
852+
password = attrs.get('password', '')
853+
if not password or not password.strip():
854+
raise serializers.ValidationError({'password': ['This field may not be blank.']})
855+
856+
return super().validate(attrs)
857+
833858
def create_update(self, validated_data, instance=None):
834859
is_update = instance is not None
835860

0 commit comments

Comments
 (0)