Cloudmail'den Rails e-postalarını alırken aşağıdaki PGError'u alıyorum:PGError: ERROR: "UTF8 kodlamak için geçersiz bayt dizisi
PGError: ERROR: invalid byte sequence for encoding "UTF8": 0xbb HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding". : INSERT INTO "comments" ("content") VALUES ('Reply with blah blah ����������������������������������������������������� .....
Bu yüzden eposta hakkına giren bazı geçersiz UTF8 karakterleri var mı? Bu yüzden onu temizlemeye çalıştım ama bir şey hala gizlice. Şimdiye kadar sahip olduğum şeyler:
message_all_clean = params[:message]
Iconv.conv('UTF-8//IGNORE', 'UTF-8', message_all_clean)
message_plain_clean = params[:plain]
Iconv.conv('UTF-8//IGNORE', 'UTF-8', message_plain_clean)
@incoming_mail = IncomingMail.create(:message_all => Base64.encode64(message_all_clean), :message_plain => Base64.encode64(message_plain_clean))
Herhangi bir fikir, düşünce veya öneriniz var mı? Teşekkürler
Teşekkürler ama CLEAN = Iconv.conv ("UTF-8 // IGNORE", "US-ASCII", içerik) gibi bir şey yapmam gerekiyor veya Iconv, içerik varını dönüştürüyor ve sadece içerik gönderebiliyorum. DB? – AnApprentice
Ah, emin değilim. Gerçek uygulamada, bir Iconv nesnesi (ic = Iconv.new ("UTF-8 // IGNORE", "US-ASCII")) oluşturdum ve ardından iconv yöntemini kullandım: content = ic.iconv (content). Iconv.conv() bunun için bir kısa yol gibi görünüyor, ancak yeniden kullanılabilir bir nesne olmasını tercih ettim. – Dominic
Nasıl Iconv indirilmeyen Ruby 1.9.3'e dönüştürmek için? –