[10.x] Added eachById and chunkByIdDesc to BelongsToMany #50991
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.
If you have a BelongsToMany pivot with a incrementing key then you can get the wrong
id
hydrated in the model and further operations would be on the wrong model.Similar to #47479, but I think the incrementing key needs to be emphasized. People could be selecting in the current release and getting the wrong ID.
People are adding methods to BuildsQuery and not following through with maintaining BelongsToMany or HasManyThrough. Example: chunkByIdDesc was added a few months ago and nobody even thought about BelongsToMany #48666.
I'd ask internals to consider a larger rewrite as this doesn't appear to be well managed. I could keep writing failing tests (e.g.
lazyByIdDesc
ororderedLazyById
), but I don't have time tonight. Additionally I'm guessing HasManyThrough (or anything else with a pivot) will have similar issues.