semua tabel di migration telah aku set menjadi UTF8
ex
create_table(:items,:options => 'ENGINE=InnoDB DEFAULT
CHARSET=utf8') do |t|
t.column :name,:string
t.column :description,:text
t.column :price,:integer
t.column :shop_id,:integer
end
ini akan membuat table items di database _development dengan opsi
engine memakai InnoDB dan charset=utf8
nah anehnya, setiap menjalankan rake:test, tabel2 yang ada di database
_test, charsetnya tidak berubah ke utf8 melainkan tetep
latin_swedish_ci (defaultnya mysql)
hiks ini menjadi problem besar, karena ketika menjalankan rake:test,
test selalu fail, dengan pesan sbg berikut
ActiveRecord::StatementInvalid: Mysql::Error: #HY000Illegal mix of
collations (latin1_swedish_ci,IMPLICIT) and
(utf8_general_ci,COERCIBLE) for operation '=': SELECT * FROM items
WHERE (items.title =
'りんごとケダモノ' AND
items.shop_id = 1 AND
items.id <> 1) LIMIT 1
gmn yak cara mengatasi masalah ini ?, dr kemaren udah nyari2 tapi
solusinya blum dapet
oh iya satu lagi,apakah betul ketika melakukan rake:test , rails akan
mengeksekusi rake db:test:clone juga ?, kalo iya ada yg tau gmn
caranya -nge override rake db:test:clone
note :
rails versi 1.2.3
ruby versi 1.8.6
mysql versi 5.0.41
makasih sebelumnya