2014-09-23 67 views
0

我正在使用Devise with rails 4和ruby 2.0,数据库是MySQL Ver 14.14 Distrib 5.5.38。当用户与像“Мукеш”(俄罗斯的穆克什)的名字注册,我得到一个错误,如下Rails/Devise/ActiveRecord不接受Unicode字符

Mysql2 ::错误:不正确的字符串值

我试图通过MySQL工作台和编辑数据库它正在工作,但在显示数据时,rails会显示问号。

如何告诉ORM/Rails/Devise接受Unicode字符?请让我知道如果需要更多的细节提前

感谢,

+0

你尝试加入编码的database.yml '编码:utf8' – mintuhouse 2014-09-23 11:40:40

+0

也可以尝试加入'config.encoding = “UTF-8”'来你的application.rb – mintuhouse 2014-09-23 11:42:04

+0

我在utf8编码database.yml。我应该指定什么编码? – mukesh 2014-09-23 11:42:09

回答

0

这是与MySQL数据库列的问题。受@ minthouse的启发,我改变了name列的编码,而不是整个表格。

ALTER TABLE users MODIFY name VARCHAR(50) CHARACTER SET utf8;

感谢@minthouse您的帮助