Ruby on rails 如何处理从数据库中获取的特殊字符,如“'”

Ruby on rails 如何处理从数据库中获取的特殊字符,如“'”,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.1,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.1,事实上,我在我的db中有一个标题,你被大学录取了,现在怎么办:决定 所以当用户输入你的名字时,你就被接受了。。。。由于“特殊字符”,它与上面的不匹配 对于这种类型的字符应该做些什么 提前谢谢 因此,如果数据库中的所有位置都有撇号,因此没有记录有引号,我只需通过gsub更正查询,使它们包含正确的引号 真正的、好的、优雅的解决方案是向数据库服务器添加排序规则。排序规则使数据库为SELECT'a'返回1,如'a'。不幸的是,utf8_general_ci和utf8_unicode_ci都是MySQL的

事实上,我在我的db中有一个标题,你被大学录取了,现在怎么办:决定

所以当用户输入你的名字时,你就被接受了。。。。由于“特殊字符”,它与上面的不匹配

对于这种类型的字符应该做些什么


提前谢谢

因此,如果数据库中的所有位置都有撇号,因此没有记录有引号,我只需通过gsub更正查询,使它们包含正确的引号


真正的、好的、优雅的解决方案是向数据库服务器添加排序规则。排序规则使数据库为SELECT'a'返回1,如'a'。不幸的是,utf8_general_ci和utf8_unicode_ci都是MySQL的内置排序规则,它们都不会将撇号与引号折叠在一起。这就是为什么您必须添加一个新的。这是如何在MySQL中实现的,您可以在这里找到:

如果它们相同,则应该匹配。可能它们不一样。您应该向我们显示这两个字符串的检查结果。它们是不同的,因为db条目包含特殊的撇号符号。但是普通用户不能输入那个特殊的撇号。我们只需键入“键盘引号”。看,它们都不同。问题在于字符编码。那么,应该做些什么来解决这个问题呢?我应该在db中更改条目吗。。如果是,怎么做?如果你有一个不常用的符号,那么最好在数据库中对它进行规范化。不要将它们另存为数据库中的内容。将它们转换为ASCII字符后保存。如果它们已保存在db中,则立即保存。。当数据从其他站点导入时,它可以是任意数量的。那么现在如何将它们转换成ASCII格式呢?这就是像lucene这样的全文索引的用途。