Only join to through_table from selecting_distance_from when there is one#48
Open
cgunther wants to merge 1 commit into
Open
Only join to through_table from selecting_distance_from when there is one#48cgunther wants to merge 1 commit into
through_table from selecting_distance_from when there is one#48cgunther wants to merge 1 commit into
Conversation
…e is one Prior to Rails 6.1, the arguments to `joins!` were compacted, so if you called `selecting_distance_from` directly on the geolocated model where `through_table` was `nil`, it'd be compacted away and a join wouldn't actually be attempted. Since Rails 6.1, the arguments to `joins!` are no longer compacted, so a join will be attempted to `nil` in such a case, leading to an error. Now we'll only join to the `through_table` if there actually is one. Here's the relevant Rails commit: rails/rails@6038755
|
I ran into this issue as well. Your fix looks perfect. Any word on when this might be mergeable? (Noticed it's waiting on #47) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Prior to Rails 6.1, the arguments to
joins!were compacted, so if you calledselecting_distance_fromdirectly on the geolocated model wherethrough_tablewasnil, it'd be compacted away and a join wouldn't actually be attempted.Since Rails 6.1, the arguments to
joins!are no longer compacted, so a join will be attempted tonilin such a case, leading to an error.Now we'll only join to the
through_tableif there actually is one.Here's the relevant Rails commit:
rails/rails@6038755
Once #47 is merged, this can be rebased to show it'll fix the failing specs.