Я получил эту ошибку, когда существует несоответствие кодировки между тем, как мое приложение Ruby выполняет синтаксический анализ строк, и тем, как база данных хранит их.
Чтобы исправить это для себя, когда я имею дело с UTF-8, я должен убедиться, что у меня есть это в верхней части рассматриваемого файла .rb:
# encoding: utf-8
В качестве альтернативы, вы можете глобально установить кодировку UTF-8 по умолчанию в файле конфигурации приложения с помощью этой строки :
Encoding.default_internal, Encoding.default_external = ['utf-8'] * 2
И, наконец, я убедился, что моя база данных использует UTF-8 для внутреннего использования, установив параметр encoding
в database.yml:
development:
adapter: postgresql
encoding: UTF8
database: pg_development
username: abe
pool: 5