diff --git a/beat/web/databases/serializers.py b/beat/web/databases/serializers.py index 855ea3776bbd826f3da050fb443cfc1d3454279d..23edc5002a2e278e83f031a8aff0c5bb7eafca6d 100644 --- a/beat/web/databases/serializers.py +++ b/beat/web/databases/serializers.py @@ -25,6 +25,8 @@ # # ############################################################################### +from django.conf import settings + from rest_framework import serializers from ..common.serializers import VersionableSerializer @@ -104,6 +106,12 @@ class DatabaseCreationSerializer(serializers.ModelSerializer): ] beat_core_class = beat.core.database.Database + def validate_declaration(self, declaration): + obj = self.Meta.beat_core_class(prefix=settings.PREFIX, data=declaration) + if not obj.valid: + raise serializers.ValidationError(obj.errors) + return declaration + def validate(self, data): user = self.context.get("user") name = self.Meta.model.sanitize_name(data["name"])