Skip to content
Snippets Groups Projects

refactor collection filters with django_filters

Merged Konrad Mohrfeldt requested to merge refactor-filters into master
2 files
+ 11
7
Compare changes
  • Side-by-side
  • Inline
Files
2
  • 24f6f06d
    There were some problems during audio_url generation for notes:
    
    1. the cba_id was never part of the Note serializer so getting
       values from the validated data needed to fail.
    2. the get_audio_url utililty function returned None if
       no cba_id was provided if a the CBA_API_KEY was missing,
       but None but the respective model field is not nullable on the note.
    3. Request or JSON decoder errors would bubble unhandled, even though
       audio_url generation seems to be optional and should not necessarily
       interfere with note creation.
+ 2
1
@@ -453,6 +453,7 @@ class NoteSerializer(serializers.ModelSerializer):
timeslot = serializers.PrimaryKeyRelatedField(queryset=TimeSlot.objects.all())
host = serializers.PrimaryKeyRelatedField(queryset=Host.objects.all())
thumbnails = serializers.SerializerMethodField() # Read-only
cba_id = serializers.IntegerField(required=False, write_only=True)
@staticmethod
def get_thumbnails(note):
@@ -476,7 +477,7 @@ class NoteSerializer(serializers.ModelSerializer):
validated_data["user_id"] = self.context["user_id"]
# Try to retrieve audio URL from CBA
validated_data["audio_url"] = get_audio_url(validated_data["cba_id"])
validated_data["audio_url"] = get_audio_url(validated_data.get("cba_id", None))
note = Note.objects.create(**validated_data)
Loading