[5.x] Fix typeahead relationship input corrupting data #11059
Merged
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.
When creating new taxonomy terms in a typeahead select, it currently allows creating new terms even if that term already exists. Both the existing as well as the newly created term can be selected and submitted. On save, the data is deduplicated, but the keys aren't reset. The resulting data structure is now an array with skipped keys, which in JSON turns into an object, and the input refuses to display the data. See issue #11019 for details and screenshots.
This PR fixes the latter part (the corrupted data and broken input state) by always making sure that relationship field data is returned as a list, without skipping array keys.
Partially closes #11019.