def create(self, validated_data): try: instance, created = BadgeCheckHelper.get_or_create_assertion( **validated_data) except DjangoValidationError as e: raise RestframeworkValidationError(e.messages) return instance
def create(self, validated_data): try: instance, created = BadgeCheckHelper.get_or_create_assertion(**validated_data) if not created: instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() except DjangoValidationError as e: raise RestframeworkValidationError(e.messages) return instance
def create(self, validated_data): try: instance, created = BadgeCheckHelper.get_or_create_assertion(**validated_data) if not created: instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() raise RestframeworkValidationError([{'name': "DUPLICATE_BADGE", 'description': "You already have this badge in your backpack"}]) except DjangoValidationError as e: raise RestframeworkValidationError(e.messages) return instance
def create(self, validated_data): url = validated_data['assertion']['id'] try: instance, created = BadgeCheckHelper.get_or_create_assertion(url=url, created_by=self.context['request'].user) if not created: instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() raise RestframeworkValidationError([{'name': "DUPLICATE_BADGE", 'description': "You already have this badge in your backpack"}]) except DjangoValidationError as e: raise RestframeworkValidationError(e.messages) return instance
def create(self, validated_data): try: validated_data['imagefile'] = validated_data.pop('image', None) instance, created = BadgeCheckHelper.get_or_create_assertion(**validated_data) if not created: instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() raise RestframeworkValidationError([{'name': "DUPLICATE_BADGE", 'description': "You already have this badge in your backpack"}]) except DjangoValidationError as e: raise RestframeworkValidationError(e.messages) return instance
def create(self, validated_data): owner = validated_data.get('created_by') try: instance, created = BadgeCheckHelper.get_or_create_assertion( url=validated_data.get('url', None), imagefile=validated_data.get('image', None), assertion=validated_data.get('assertion', None), created_by=owner, ) owner.publish() # update BadgeUser.cached_badgeinstances() except DjangoValidationError as e: raise RestframeworkValidationError(e.args[0]) return instance
def create(self, validated_data): owner = validated_data.get('created_by') try: instance, created = BadgeCheckHelper.get_or_create_assertion( url=validated_data.get('url', None), imagefile=validated_data.get('image', None), assertion=validated_data.get('assertion', None), created_by=owner, ) if not created: instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() raise RestframeworkValidationError([{'name': "DUPLICATE_BADGE", 'description': "You already have this badge in your backpack"}]) owner.publish() # update BadgeUser.cached_badgeinstances() except DjangoValidationError as e: raise RestframeworkValidationError(e.args[0]) return instance
def create(self, validated_data): owner = validated_data.get('created_by') try: instance, created = BadgeCheckHelper.get_or_create_assertion( url=validated_data.get('url', None), imagefile=validated_data.get('image', None), assertion=validated_data.get('assertion', None), created_by=owner, ) if not created: if instance.acceptance == BadgeInstance.ACCEPTANCE_ACCEPTED: raise RestframeworkValidationError([{'name': "DUPLICATE_BADGE", 'description': "You already have this badge in your backpack"}]) instance.acceptance = BadgeInstance.ACCEPTANCE_ACCEPTED instance.save() owner.publish() # update BadgeUser.cached_badgeinstances() except DjangoValidationError as e: raise RestframeworkValidationError(e.args[0]) return instance