Přidání řazení:utf8_general_ci do vašeho souboru database.yml, jako jste to udělali, by mělo stačit. Zkuste znovu vytvořit testovací databázi pomocí "rake RAILS_ENV=test db:migrate:reset db:fixtures load" - varování, že toto vymaže všechna data, která tam máte mimo zařízení.
To se mi osvědčilo. Chcete-li ověřit, zda vidíte řazení v databázi, tabulkách a sloupcích, můžete provést následující:
-- Database Collations:
SELECT schema_name,default_character_set_name,default_collation_name
FROM information_schema.SCHEMATA
WHERE schema_name not IN ('mysql');
-- Table Collations:
SELECT T.table_schema, T.table_name, T.TABLE_COLLATION, CCSA.CHARACTER_SET_NAME
FROM information_schema.`TABLES` T,
information_schema.`COLLATION_CHARACTER_SET_APPLICABILITY` CCSA
WHERE CCSA.collation_name = T.table_collation
AND T.table_schema not IN ('mysql');
-- Column Collations:
SELECT table_schema, table_name, column_name, collation_name, character_set_name
FROM information_schema.`COLUMNS` C
WHERE C.table_schema not IN ('mysql')
ORDER BY 1,2,4;
Vše ve vaší testovací databázi by nyní mělo mít řazení specifikované v database.yml.