def _filter_by_severity(self, request, queryset=None): if queryset is None: queryset = self.queryset severity_str = request.GET.get("severity", "INFO") try: severity = severity_from_str(severity_str) except KeyError: raise ParseError("Invalid severity '%s', must be on of %s" % (severity_str, ",".join(SEVERITIES.values()))) return queryset.filter(Event.severity <= severity)
class EventSerializer(serializers.Serializer): class Meta: fields = ('when', 'severity', 'message') when = serializers.DateTimeField(help_text="Time at which event was generated") severity = serializers.SerializerMethodField('get_severity') message = serializers.CharField(help_text="One line human readable description") def get_severity(self, obj): return severity_str(obj.severity) # django_rest_framework 2.3.12 doesn't let me put help_text on a methodfield # https://github.com/tomchristie/django-rest-framework/pull/1594 EventSerializer.base_fields['severity'].help_text = "One of %s" % ",".join(SEVERITIES.values()) class LogTailSerializer(serializers.Serializer): """ Trivial serializer to wrap a string blob of log output """ class Meta: fields = ('lines',) lines = serializers.CharField("Retrieved log data as a newline-separated string") class ConfigSettingSerializer(serializers.Serializer): class Meta: fields = ('key', 'value')
fields = ('when', 'severity', 'message') when = serializers.DateTimeField( help_text="Time at which event was generated") severity = serializers.SerializerMethodField('get_severity') message = serializers.CharField( help_text="One line human readable description") def get_severity(self, obj): return severity_str(obj.severity) # django_rest_framework 2.3.12 doesn't let me put help_text on a methodfield # https://github.com/tomchristie/django-rest-framework/pull/1594 EventSerializer.base_fields['severity'].help_text = "One of %s" % ",".join( SEVERITIES.values()) class LogTailSerializer(serializers.Serializer): """ Trivial serializer to wrap a string blob of log output """ class Meta: fields = ('lines', ) lines = serializers.CharField( "Retrieved log data as a newline-separated string") class ConfigSettingSerializer(serializers.Serializer): class Meta: