diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2018-10-08 16:45:05 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2018-10-09 13:03:08 +0900 |
commit | 136b738cd261a7f54f478f9fb160afb9f5e50a02 (patch) | |
tree | bc8d267763c061625939810c32d5abc3d38fcbbb /railties/lib | |
parent | a1ee4a9ff9d4a3cb255365310ead0dc7b739c6be (diff) | |
download | rails-136b738cd261a7f54f478f9fb160afb9f5e50a02.tar.gz rails-136b738cd261a7f54f478f9fb160afb9f5e50a02.tar.bz2 rails-136b738cd261a7f54f478f9fb160afb9f5e50a02.zip |
Generate delegation methods to named scope in the definition time
The delegation methods to named scope are defined when `method_missing`
is invoked on the relation.
Since #29301, the receiver in the named scope is changed to the relation
like others (e.g. `default_scope`, etc) for consistency.
Most named scopes would be delegated from relation by `method_missing`,
since we don't allow scopes to be defined which conflict with instance
methods on `Relation` (#31179). But if a named scope is defined with the
same name as any method on the `superclass` (e.g. `Kernel.open`), the
`method_missing` on the relation is not invoked.
To address the issue, make the delegation methods to named scope is
generated in the definition time.
Fixes #34098.
Diffstat (limited to 'railties/lib')
0 files changed, 0 insertions, 0 deletions