提交 9104d63f 编写于 作者: J Jeremy Kemper

Quote ActiveSupport::Multibyte::Chars. Closes #6653.

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5597 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 cd6beacf
*SVN*
* Quote ActiveSupport::Multibyte::Chars. #6653 [Julian Tarkhanov]
* Simplify query_attribute by typecasting the attribute value and checking whether it's nil, false, zero or blank. #6659 [Jonathan Viney]
* validates_numericality_of uses \A \Z to ensure the entire string matches rather than ^ $ which may match one valid line of a multiline string. #5716 [Andreas Schwarz]
......
......@@ -8,7 +8,8 @@ def quote(value, column = nil)
return value.quoted_id if value.respond_to?(:quoted_id)
case value
when String
when String, ActiveSupport::Multibyte::Chars
value = value.to_s
if column && column.type == :binary && column.class.respond_to?(:string_to_binary)
"'#{quote_string(column.class.string_to_binary(value))}'" # ' (for ruby-mode)
elsif column && [:integer, :float].include?(column.type)
......
......@@ -1102,6 +1102,18 @@ def test_quote
assert_equal author_name, Topic.find(topic.id).author_name
end
def test_quote_chars
str = 'The Narrator'
topic = Topic.create(:author_name => str)
assert_equal str, topic.author_name
assert_kind_of ActiveSupport::Multibyte::Chars, str.chars
topic = Topic.find_by_author_name(str.chars)
assert_kind_of Topic, topic
assert_equal str, topic.author_name, "The right topic should have been found by name even with name passed as Chars"
end
def test_class_level_destroy
should_be_destroyed_reply = Reply.create("title" => "hello", "content" => "world")
Topic.find(1).replies << should_be_destroyed_reply
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册