Rails,奇怪的字符串插入数据库。怎么逃避一切?

时间:2015-05-28 13:44:38

标签: mysql sql ruby-on-rails string escaping

有时我必须向db插入一些奇怪的东西,例如:

SET `title` = '\"- ✪㉨)⊃ [PC] 1# Potato(ง ͠ ᵒ̌ Дᵒ̌)\"'

错误:

Mysql2::Error: Incorrect string value: '\xE2\x8A\x82(\xE2\x9C...' for column 'title' at row 1

我的ActiveRecord代码:

@title = "- ✪㉨)⊃ [PC] 1# Potato(ง ͠ ᵒ̌ Дᵒ̌)\"

User.update(1, title: "#{@title.inspect}") # .inspect doesn't help :/ 

我认为我可以做的是,我可以创建包含等wierdo标志的表格,并在保存前用字符串替换它们。从数据库中选择此字符串后,用这些符号替换一些代码。但是......基本上不可能抓住一切......

0 个答案:

没有答案