初學(xué)rails的幾個(gè)注意事項(xiàng)

          今天按照Agile Web Development with Rails 的depot例子,準(zhǔn)備根據(jù)數(shù)據(jù)庫(kù)表自動(dòng)生成scaffold,
          那天在公司把這個(gè)例子做了一遍,覺(jué)得挺順利,沒(méi)想到今天換到家里的機(jī)子后,出現(xiàn)了不少問(wèn)題.
          在這里記錄一下出現(xiàn)的問(wèn)題及解決辦法.
          開(kāi)發(fā)環(huán)境基本就是
            WinXP
            ruby1.8.6
            rails1.2.3
            MySQL Community Edition5.0.37


          1.創(chuàng)建好數(shù)據(jù)庫(kù)和products表后,執(zhí)行
              cmd>ruby script/generate scaffold product
          結(jié)果報(bào)錯(cuò)
                exists  app/controllers/
                
                error  Before updating scaffolding from new DB schema, try creating a ta
          le 
          for your model (Product)
           
            
           
          在google上搜了一下,大概有2種解決辦法:
             (1) 在database.yml文件中,在密碼項(xiàng)前面加個(gè)空格(原文地址http://www.javaeye.com/post/264530)
             (2) 數(shù)據(jù)表名稱沒(méi)有復(fù)數(shù),默認(rèn)情況下,如果表為products,則命令相應(yīng)為....scaffold product
                 這個(gè)規(guī)則可以在相應(yīng)的配置文件中修改,具體可以google,這里不多講了.
            這兩種方法都試過(guò)了,但問(wèn)題依舊.
             (3)無(wú)意中打開(kāi)database.yml文件,發(fā)現(xiàn)有這樣幾句提示:
          # Install the MySQL driver:
          #   gem install mysql
          # On MacOS X:
          #   gem install mysql 
          -- --include=/usr/local/lib
          # On Windows:
          #   gem install mysql
          #   Choose the win32 build.
          #   Install MySQL and put its 
          /bin directory on your path.
            于是執(zhí)行了gem install mysql,之后問(wèn)題就解決了.奇怪的是我在辦公室一樣的環(huán)境,沒(méi)有執(zhí)行g(shù)em install mysql,也沒(méi)有出現(xiàn)過(guò)該問(wèn)題.唯一的區(qū)別,呵呵,大概就是家里網(wǎng)速慢,那天gem intall rails時(shí)
          中斷了好幾次,不過(guò)這個(gè)問(wèn)題總算解決了..

          2. 連接數(shù)據(jù)庫(kù)編碼問(wèn)題
             生成scaffold后,就可以CRUD了,但是發(fā)現(xiàn)執(zhí)行完CRUD后,mysql數(shù)據(jù)庫(kù)中記錄為亂碼,執(zhí)行
            mysql>set  names gbk后,還是顯示亂碼,depot數(shù)據(jù)庫(kù)、products表均已設(shè)置為utf8格式,在 
            database.yml中加入encoding:utf8后,問(wèn)題解決.
          development:
            adapter: mysql
            database: depot
            username: root
            password:
            host: localhost
            encoding: utf8
           

          posted on 2007-09-04 21:39 想飛就飛 閱讀(1465) 評(píng)論(3)  編輯  收藏 所屬分類: ROR

          評(píng)論

          # re: 初用ruby的幾個(gè)注意事項(xiàng) 2007-09-04 22:20 軒朗=maninred

          編碼問(wèn)題一般在windows下才有的吧,如果使用MacOSX和Linux這些默認(rèn)local編碼為utf-8的不用加入編碼指定也不會(huì)亂碼,還有在輸入數(shù)據(jù)時(shí)瀏覽器的編碼設(shè)置也是一個(gè)原因。  回復(fù)  更多評(píng)論   

          # re: 初用ruby的幾個(gè)注意事項(xiàng) 2007-09-05 08:24 dennis

          這個(gè),應(yīng)該叫學(xué)習(xí)rails的注意事項(xiàng)比較合適  回復(fù)  更多評(píng)論   

          # re: 初用ruby的幾個(gè)注意事項(xiàng) 2007-09-05 09:29 想飛就飛

          @dennis
          :)
          多謝提醒啊
            回復(fù)  更多評(píng)論   

          公告


          導(dǎo)航

          <2007年9月>
          2627282930311
          2345678
          9101112131415
          16171819202122
          23242526272829
          30123456

          統(tǒng)計(jì)

          常用鏈接

          留言簿(13)

          我參與的團(tuán)隊(duì)

          隨筆分類(69)

          隨筆檔案(68)

          最新隨筆

          搜索

          積分與排名

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 永胜县| 高安市| 邳州市| 阿勒泰市| 北辰区| 祁连县| 岳普湖县| 申扎县| 翼城县| 泸溪县| 阜康市| 闻喜县| 巴林右旗| 中卫市| 子长县| 阳城县| 泽州县| 山东| 新昌县| 年辖:市辖区| 宝丰县| 化州市| 崇义县| 长治市| 朝阳区| 绿春县| 莒南县| 阿勒泰市| 丘北县| 韶山市| 尚义县| 封丘县| 沙田区| 河南省| 丹寨县| 鄯善县| 永清县| 勃利县| 淄博市| 寿光市| 连江县|