|
@@ -10,20 +10,19 @@ class DiscoverSavedQuerySerializer(serializers.Serializer):
|
|
|
projects = ListField(
|
|
|
child=serializers.IntegerField(),
|
|
|
required=False,
|
|
|
- allow_null=True,
|
|
|
default=[]
|
|
|
)
|
|
|
- start = serializers.DateTimeField(required=False)
|
|
|
- end = serializers.DateTimeField(required=False)
|
|
|
- range = serializers.CharField(required=False, allow_none=True)
|
|
|
+ start = serializers.DateTimeField(required=False, allow_null=True)
|
|
|
+ end = serializers.DateTimeField(required=False, allow_null=True)
|
|
|
+ range = serializers.CharField(required=False, allow_null=True)
|
|
|
fields = ListField(
|
|
|
child=serializers.CharField(),
|
|
|
required=False,
|
|
|
allow_null=True,
|
|
|
)
|
|
|
- limit = serializers.IntegerField(min_value=0, max_value=1000, required=False)
|
|
|
- rollup = serializers.IntegerField(required=False)
|
|
|
- orderby = serializers.CharField(required=False)
|
|
|
+ limit = serializers.IntegerField(min_value=0, max_value=1000, required=False, allow_null=True)
|
|
|
+ rollup = serializers.IntegerField(required=False, allow_null=True)
|
|
|
+ orderby = serializers.CharField(required=False, allow_null=True)
|
|
|
conditions = ListField(
|
|
|
child=ListField(),
|
|
|
required=False,
|
|
@@ -32,7 +31,6 @@ class DiscoverSavedQuerySerializer(serializers.Serializer):
|
|
|
aggregations = ListField(
|
|
|
child=ListField(),
|
|
|
required=False,
|
|
|
- allow_null=True,
|
|
|
default=[]
|
|
|
)
|
|
|
groupby = ListField(
|
|
@@ -41,9 +39,8 @@ class DiscoverSavedQuerySerializer(serializers.Serializer):
|
|
|
allow_null=True,
|
|
|
)
|
|
|
|
|
|
- def validate_projects(self, attrs, source):
|
|
|
+ def validate_projects(self, projects):
|
|
|
organization = self.context['organization']
|
|
|
- projects = attrs[source]
|
|
|
|
|
|
org_projects = set(Project.objects.filter(
|
|
|
organization=organization,
|
|
@@ -54,7 +51,7 @@ class DiscoverSavedQuerySerializer(serializers.Serializer):
|
|
|
if set(projects) != org_projects:
|
|
|
raise PermissionDenied
|
|
|
|
|
|
- return attrs
|
|
|
+ return projects
|
|
|
|
|
|
def validate(self, data):
|
|
|
query = {}
|