Fix KeyError in nested serialization of ConfigContext, and add ObjectChange API test, add ObjectChange unique_together #3896
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes: #3885
See also #3872 (comment)
What's Changed
Change
self.fields.pop("dynamic_groups")
toself.fields.pop("dynamic_groups", None)
as in the case of nested serialization of a ConfigContext (such as within an ObjectChange), M2M fields such asdynamic_groups
are already automatically excluded from the serializer.Add missing API test cases for the ObjectChange REST API read-only endpoint and confirm that they catch this specific error.
Add a
unique_together
onObjectChange
model of(time, request_id, changed_object_type, changed_object_id)
both for general purpose data correctness but also to provide an appropriatenatural_key
for this model (fixes #3885).Add basic model test case for ObjectChange to exercise its natural-key and composite-key construction.
TODO