diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2017-12-18 01:40:55 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2017-12-18 01:52:54 +0900 |
commit | de354cc3573e8b6e81448080a21c313f5bdbab7b (patch) | |
tree | ae152e243042b03e28b6d68f53a2d30fd6203d28 /activerecord/lib/active_record | |
parent | 475a0f887ce4087443fdf7c5f3f066c90fb00126 (diff) | |
download | rails-de354cc3573e8b6e81448080a21c313f5bdbab7b.tar.gz rails-de354cc3573e8b6e81448080a21c313f5bdbab7b.tar.bz2 rails-de354cc3573e8b6e81448080a21c313f5bdbab7b.zip |
Using table name qualified column names unless having SELECT list explicitly
Previously table name qualified `*` is used in that case. If it is not
qualified with a table name, an ambiguous column name error will occur
when using JOINs.
Diffstat (limited to 'activerecord/lib/active_record')
-rw-r--r-- | activerecord/lib/active_record/relation/query_methods.rb | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/activerecord/lib/active_record/relation/query_methods.rb b/activerecord/lib/active_record/relation/query_methods.rb index 6b3ff3d610..2056f9bb73 100644 --- a/activerecord/lib/active_record/relation/query_methods.rb +++ b/activerecord/lib/active_record/relation/query_methods.rb @@ -1040,8 +1040,8 @@ module ActiveRecord def build_select(arel) if select_values.any? arel.project(*arel_columns(select_values.uniq)) - elsif @klass.ignored_columns.any? - arel.project(*arel_columns(@klass.column_names.map(&:to_sym))) + elsif klass.ignored_columns.any? + arel.project(*klass.column_names.map { |field| arel_attribute(field) }) else arel.project(table[Arel.star]) end |