I opened this issue here:
The update method for a LIST serializer creates, updates, and deletes objects. The comments in the code are " # Perform creations and updates." and "# Perform deletions.".
The issue was just closed by Tom Christie without any thought saying "this is the update method".
Unfortunately the create logic is flawed, because if there is more than 1 item to create, it will either not have an id, or they will both be have a key of None, and hence:
data_mapping = {item['id']: item for item in validated_data}
Will override any existing key or raise an error. The result or is either an error, or worse silently only ever updating one item in the list.
Its hard enough to learn DRF without examples that don't work.
Kind Regards