diff --git a/hypha/apply/api/v1/stream_serializers.py b/hypha/apply/api/v1/stream_serializers.py index a33383b1919bf17dd58efdb42c20a20d2a8b7061..a6cf1ca615c28ba9afbb894ca7e3420192f5aff7 100644 --- a/hypha/apply/api/v1/stream_serializers.py +++ b/hypha/apply/api/v1/stream_serializers.py @@ -21,8 +21,6 @@ class WagtailSerializer: serializer_fields = OrderedDict() form_fields = self.get_form_fields() for field_id, field in form_fields.items(): - if isinstance(field, BlockFieldWrapper): - continue serializer_fields[field_id] = self._get_field( field, self.get_serializer_field_class(field), @@ -110,6 +108,9 @@ class WagtailSerializer: if attrs.get('required') and 'default' in attrs: del attrs['required'] + if isinstance(form_field, BlockFieldWrapper): + return attrs + # avoid "May not set both `read_only` and `required`" if form_field.widget.attrs.get('readonly', False) == 'readonly': attrs['read_only'] = True @@ -125,6 +126,8 @@ class WagtailSerializer: have to create mapping b/w form fields and serializer fields to get the respective classes. But for now this works. """ + if isinstance(field, BlockFieldWrapper): + return getattr(serializers, 'CharField') if isinstance(field, ScoredAnswerField): return ScoredAnswerListField if isinstance(field, TypedChoiceField):