Rails’de yeni.Fikstür: utf-8 karakter nasıl yüklenir ve utf-8 olmayanlara dönüştürülür ve veritabanına nasıl kaydedilir?
Eski bir UTF8 karakterini veritabanından veritabanına yüklemek için Fixtures'a dayanan eski bir kod üzerinde çalışıyorum.
Rayların en son sürümünde, yml utf-8 kodlaması olmalıdır, yani Armatürlerin okunması utf-8 kodlaması olacaktır.
Aşağıdaki kodlar utf-8'den non-utf8'e dönüştürülecek ve veritabanına yüklenecek şekilde nasıl dönüştürülür (utf8'in non-course kodlaması).
class LoadUsersData < ActiveRecord::Migration
def self.up
down
directory = File.join(File.dirname(__FILE__))
Fixtures.create_fixtures(directory, "users")
end
def self.down
User.delete_all
end
end
users.yml, utf-8 biçiminde veri içermelidir (gerekiyor).
Veya .txt (utf8 olmayan formatta olabilir) kullanmak ve Fixtures ile yüklemek mümkün mü?
oracle_enhanced kullanıyorum ve database.yml veritabanımı kodlama için "kodlama" değiştirmeyi denedim, ancak dönüştürme işlemi utf-8'den kodlamam için otomatik olarak yapılmıyor gibi görünüyor (çünkü dize uzunluğu farklı utf-8 ile bu iki kodlama için daha fazla bayt vardır ve veritabanı bu kullanıcı_adı çok uzun bir hata döndürür).