Skip to content

Commit

Permalink
Fix join table column quoting with SQLite.
Browse files Browse the repository at this point in the history
  • Loading branch information
gmcgibbon committed Dec 5, 2018
1 parent d76d8f7 commit 93f1907
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 0 deletions.
4 changes: 4 additions & 0 deletions activerecord/CHANGELOG.md
@@ -1,3 +1,7 @@
* Fix join table column quoting with SQLite.

*Gannon McGibbon*

* Allow disabling scopes generated by `ActiveRecord.enum`.

*Alfred Dominic*
Expand Down
Expand Up @@ -12,6 +12,10 @@ def quote_table_name_for_assignment(table, attr)
quote_column_name(attr)
end

def quote_table_name(name)
@quoted_table_names[name] ||= super.gsub(".", "\".\"").freeze
end

def quote_column_name(name)
@quoted_column_names[name] ||= %Q("#{super.gsub('"', '""')}")
end
Expand Down
4 changes: 4 additions & 0 deletions activerecord/test/cases/calculations_test.rb
Expand Up @@ -721,6 +721,10 @@ def test_pluck_with_includes_offset
assert_equal [], Topic.includes(:replies).order(:id).offset(5).pluck(:id)
end

def test_pluck_with_join
assert_equal [[2, 2], [4, 4]], Reply.includes(:topic).pluck(:id, :"topics.id")
end

def test_group_by_with_limit
expected = { "Post" => 8, "SpecialPost" => 1 }
actual = Post.includes(:comments).group(:type).order(:type).limit(2).count("comments.id")
Expand Down

0 comments on commit 93f1907

Please sign in to comment.