閔毓
          http://www.eshoo.com.cn 歡迎來到異客中國
          posts - 49,comments - 97,trackbacks - 0
          初學Rails,簡單的做了一個例子,發(fā)現(xiàn)存在中文問題。
          大致中文問題歸類如下:
          ?????? 1、頁面無法顯示中文,產(chǎn)生中文亂碼
          ?????? 2、Mysql數(shù)據(jù)庫采用utf8后,頁面采用utf8,數(shù)據(jù)庫保存是亂碼,但頁面顯示正常。
          ?????? 3、時間格式在頁面上的中文顯示產(chǎn)生亂碼。
          打開:application.rb:修改代碼如下顯示:
          1?class?ApplicationController?<?ActionController::Base?
          2?before_filter?:set_charset?
          3?def?set_charset?
          4?@headers["Content-Type"]?=?"text/html;?charset=utf-8"?
          5?end?
          6?end?
          同時對頁面(*.rhtml)上進行增加編碼控制:
          <meta?http-equiv="Content-type"?content="text/rhtml;?charset=utf8"?/>
          同時在保存頁面時,進行編碼轉(zhuǎn)換成utf8格式。
          做完以上工作的話,利用mysql數(shù)據(jù)庫客戶端工具Navicat查看數(shù)據(jù)庫,你會發(fā)現(xiàn)數(shù)據(jù)庫中保存的中文數(shù)據(jù)會出現(xiàn)亂碼,因此需要進一步處理:
          1、建數(shù)據(jù)庫時采用utf8編碼進行建庫,同時建表或者導表時要注意采用utf8編碼。
          2、采用Navicat連接數(shù)據(jù)庫時在Advanced Settings中選擇Encoding編碼為utf8,同時取消Use MySQL character set的默認選項,再進行連接。
          進行以上設(shè)置,將會在數(shù)據(jù)庫中顯示出正常的中文。同時頁面上顯示也會是中文,但你會發(fā)現(xiàn)對于時間的顯示上仍然存在一些小問題。因此在輸出時間時需要進行(original_date.strftime("%Y/%m/%d"))轉(zhuǎn)換格式。
          完成。
          繼續(xù)學習中......,發(fā)現(xiàn)新的問題,再更新。
          posted on 2006-09-27 11:55 閔毓 閱讀(6469) 評論(6)  編輯  收藏 所屬分類: 其他

          FeedBack:
          # re: Ruby on Rails 學習:解決中文亂碼問題
          2006-10-24 08:58 | 糞叉
          很實用,謝謝!  回復  更多評論
            
          # re: Ruby on Rails 學習:解決中文亂碼問題
          2006-10-28 15:40 | dsl
          我按照你的方法做了
          怎么不行啊 頁面還是不能顯示中文
            回復  更多評論
            
          # re: Ruby on Rails 學習:解決中文亂碼問題
          2006-10-31 14:47 |
          注意兩點:一點數(shù)據(jù)庫客戶端的連接方式。另一點是將頁面轉(zhuǎn)換成utf8格式。絕對是沒有問題的。  回復  更多評論
            
          # re: Ruby on Rails 學習:解決中文亂碼問題
          2007-08-23 12:42 | apec
          頁面亂碼很簡單:將你的rhtml存為utf-8格式的文件即可。
            回復  更多評論
            
          # re: Ruby on Rails 學習:解決中文亂碼問題[未登錄]
          2008-02-24 11:43 | 過客
          mysql采用utf-8后,對中文的排序是不對的。還應(yīng)用gbk.  回復  更多評論
            
          # re: Ruby on Rails 學習:解決中文亂碼問題
          2008-09-19 11:10 | innohub
          頂一下。謝謝  回復  更多評論
            
          主站蜘蛛池模板: 克什克腾旗| 仁化县| 吉安市| 镇赉县| 巴彦淖尔市| 沁阳市| 神池县| 荣成市| 革吉县| 奇台县| 辉南县| 西丰县| 辽宁省| 九江市| 邵武市| 宝兴县| 桂阳县| 邵东县| 师宗县| 新化县| 上林县| 吉水县| 家居| 沐川县| 东方市| 东辽县| 沙湾县| 金堂县| 阿尔山市| 炉霍县| 金湖县| 通江县| 淮南市| 保靖县| 邮箱| 灯塔市| 丰县| 铜鼓县| 高要市| 黄梅县| 博爱县|