Tôi chỉ có một cách ngẫu nhiên lỗi lạ này qua Rails 3, trên Heroku (postgres)Rails 3, Heroku - PGError: ERROR: chuỗi byte không hợp lệ để mã hóa "UTF8":
PGError: ERROR: invalid byte sequence for encoding "UTF8": 0x85 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 ('BTW∑I re-listened to the video' ......
Các gợi ý trong khi isn đẹp' t làm bất cứ điều gì nhấp cho tôi. Tôi có thể đặt mã hóa ở đâu đó không? Tôi có nên rối tung với điều đó không? Bất cứ ai nhìn thấy điều này và/hoặc có bất kỳ ý tưởng về cách đối phó với loại vấn đề này?
Cảm ơn bạn
Cảm ơn bạn vonconrad, bạn là một người tiết kiệm cuộc sống. Tôi đã đặt config.ecoding chính xác. Mặc dù có thể Heroku đang thay đổi một cái gì đó khi triển khai. Nếu tôi đi với các giải pháp iconv, mà có vẻ như sự lựa chọn thông minh nhất từ bình luận của bạn, bất kỳ vấn đề nhìn thấy khi di chuyển lên đến Ruby 1.9? Ngoài ra các tài liệu là khá trống cho iconv và tôi là một newbie, bất kỳ cách nào để xem một ví dụ? cảm ơn! – AnApprentice
Tôi tin rằng 'iconv' sẽ hoạt động với cả 1.8 và 1.9. Đối với mã, một cái gì đó như thế này sẽ làm việc: 'content = :: Iconv.conv ('UTF-8 // IGNORE', 'UTF-8', nội dung + '') [0 ..- 2]'. Về cơ bản, điều này buộc mã hóa phải là UTF-8, bất kể nó ban đầu là gì. Tôi nhận được mã từ đây: http://stackoverflow.com/questions/4583924/string-force-encoding-in-ruby-1-8-7-or-rails-2-x/4585362#4585362 – vonconrad