2014-09-23 43 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您的幫助