Поле Ruby 1.9, возвращающее кодировку ASCII, даже если указано UTF8 - PullRequest
1 голос
/ 03 ноября 2010

У меня везде UTF-8, так почему Page.last.url.encoding возвращает "ASCII-8BIT"?

Моя база данных.yml:

development:
  adapter: mysql
  username: root
  encoding: utf8
  database: recipebook

MySQL:

CREATE TABLE `pages` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `url` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `user_id` int(11) DEFAULT NULL,
  `recipe_id` int(11) DEFAULT NULL,
  `created_at` datetime DEFAULT NULL,
  `updated_at` datetime DEFAULT NULL,
  `html` blob,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

1 Ответ

1 голос
/ 03 ноября 2010

Какую версию mysql gem вы используете? 2.8 не поддерживает кодировку ruby ​​1.9. Вы можете исправить это, используя инструкции здесь . Mysql2 должен учитывать кодировку, но я не уверен, что он работает на Rails 2 (кстати, какую версию rails вы используете?)

...