Commit cb2c2f3fc331b3892fb4fed69babe668e287e99d

Authored by Rohan Rangray
1 parent 9b28c5c0eb
Exists in master

Fixed FlashcardMask JSON deserialization.

Showing 2 changed files with 5 additions and 4 deletions Side-by-side Diff

flashcards/serializers.py View file @ cb2c2f3
... ... @@ -95,11 +95,11 @@
95 95 return dumps(list(self._make_mask(value)))
96 96  
97 97 def to_internal_value(self, value):
98   - return self._make_mask(value)
  98 + return self._make_mask(loads(value))
99 99  
100 100 def _make_mask(self, data):
101 101 try:
102   - mask = FlashcardMask(loads(data))
  102 + mask = FlashcardMask(data)
103 103 except ValueError:
104 104 raise serializers.ValidationError("Invalid JSON for MaskField")
105 105 except TypeError:
flashcards/validators.py View file @ cb2c2f3
... ... @@ -4,8 +4,9 @@
4 4  
5 5  
6 6 class FlashcardMask(set):
7   - def __init__(self, *args, **kwargs):
8   - super(FlashcardMask, self).__init__(*args, **kwargs)
  7 + def __init__(self, iterable, *args, **kwargs):
  8 + iterable = map(tuple, iterable)
  9 + super(FlashcardMask, self).__init__(iterable, *args, **kwargs)
9 10 self._iterable_check()
10 11 self._interval_check()
11 12 self._overlap_check()