Ruby on rails RAILS JSON+;EXTJS
我对rails JSON输出中西里尔字符的转义有问题:Ruby on rails RAILS JSON+;EXTJS,ruby-on-rails,json,extjs,Ruby On Rails,Json,Extjs,我对rails JSON输出中西里尔字符的转义有问题: {"success":true,"total":"2","offices":[{"address":"addr","created_at":"2011-06-03T11:55:09Z","description":"desc","id":1,"name":"Office 1","published":true,"updated_at":"2011-06-05T13:48:35Z"},{"address":"\ufffd\ufffd\ufff
{"success":true,"total":"2","offices":[{"address":"addr","created_at":"2011-06-03T11:55:09Z","description":"desc","id":1,"name":"Office 1","published":true,"updated_at":"2011-06-05T13:48:35Z"},{"address":"\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd","created_at":"2011-06-03T12:32:19Z","description":"\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd","id":2,"name":"\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd 2","published":null,"updated_at":"2011-06-05T13:49:51Z"}]}
它们在EXTJS中没有正确解码,导致网格被破坏�������� 二,
页面编码为UTF8。Mysql和Rails配置被设置为UTF8
有什么想法吗?有代码吗?
我所看到的是,您的字符在json输出中已经扭曲了(如果仔细观察-“\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd”)。哪个ruby和哪个rails版本?我可以确认这个问题。使用相同版本的rails和ruby,所有非ascii字母的书写方式都类似于\ufffd(包括瑞典语“ÄÖ”和西里尔语“ЯЧЩ”)。我已经将问题隔离到了to_json函数中。是的,过了一会儿,我还注意到,输出是使用以下代码[code]def index生成的@offices=Office.find(:all,:conditions=>buildFilterOptions(params[:filter]),:limit=>gf_limit,:offset=>gf_offset,:order=>gf_sortcol+'''+gf_sortdir)render:json=>{:success=>true,:total=>gf_total.to_,:offices=>@offices}end[/code]尝试添加响应;字符集=utf-8';在渲染之前。问题是mysql gem,这里解释了解决方案:10倍于所有人