fix: avoid problem when fields is set to '__all__'

This commit is contained in:
Josh Niec 2026-06-02 18:37:24 -04:00
parent 1597f1bd7d
commit c264b42abc
1 changed files with 9 additions and 1 deletions

View File

@ -52,9 +52,17 @@ def get_bulk_update_serializer_class(serializer_class, *, partial=False):
meta = getattr(serializer_class, 'Meta')
class Meta(meta):
if meta.fields == '__all__':
fields = '__all__'
else:
fields = ('id', *[f for f in meta.fields if f != 'id'])
class Meta(meta):
pass
# intentional; this is different than setting fields = fields within class Meta above
Meta.fields = fields
bases = (
(BulkPartialUpdateSchemaMixin, serializer_class)
if partial