免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3303 | 回复: 0
打印 上一主题 下一主题

Windows下ruby1.8.7配合rails2.3.4配合oracle 10g 安装配置并解决中文网页乱码问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-02-21 10:32 |只看该作者 |倒序浏览
转:robinshaw

Windows下ruby1.8.7配合rails2.3.4配合oracle 10g 安装配置并解决中文网页乱码问题



本文重点写一个大体流程,细节方面请参考其他众多高手的文档
一、安装配置
(1)安装ruby,过程略
(2)安装rails及其依赖包和Oracle驱动,包的可行安装顺序如下:
rake-0.8.7.gem
rack-1.0.1.gem
activesupport-2.3.4.gem
activerecord-2.3.4.gem
actionpack-2.3.4.gem
actionmailer-2.3.4.gem
activeresource-2.3.4.gem
rails-2.3.4.gem
activerecord-oracle_enhanced-adapter-1.2.2.gem
ruby-oci8-2.0.4-x86-mingw32.gem

若没有互联网网络条件,可以下载这些包,为了方便,编1个批处理程序,完成这些安装。

二、编码问题的解决(主要是采用(2)的模式值得探讨)
(1)数据库编码:UTF8,脚本编码:UTF8
对于web访问来说没有任何问题,若数据库客户端要正常访问,必须将Oracle 客户端的环境变量nls_lang设为AL32UTF8,或其他形式的UTF8编码格式。
点评:如果数据库没有使用到其他编码模式,推荐使用此模式

(2)数据库编码:GBK(即oracle的SIMPLIFIED CHINESE_CHINA.ZHS16GBK),脚本编码:GBK,GB2312等中文编码系列
rails自身缺陷,web访问会有问题,会造成很多汉字无法正确显示,并且scaffold生成后,网页上edit功能会出现无法提取汉字的错误等等。最简单的修改方法:
1)在控制器ApplicationController.rb中
找到 class ApplicationController < ActionController::Base

下面加入代码
  1. before_filter :configure_charsets
  2.   def configure_charsets
  3.      response.headers["Content-Type"] = "text/html; charset=GBK"
  4.   end
复制代码
$KCODE='gbk' #因为其他插件可能改变了KCODE

三、自己建立一个scaffold,运行服务器,测试是否正常,中文都能显示和编辑并写入数据库

这是本人大量google,baidu后总结的方法,请大家批评指正
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP