首頁»RubyOnRails»在Windows下配置Ruby on Rails開發環境

在Windows下配置Ruby on Rails開發環境

來源:Web開發者 發布時間:2012-02-20 閱讀次數:

本文詳細介紹如何在Windows配置Ruby on Rails 開發環境,希望對ROR初學者能有幫助。

一、下載并安裝Ruby

Windows下安裝Ruby最好選擇 RubyInstaller(一鍵安裝包)。
下載地址: http://rubyforge.org/frs/?group_id=167
我們這里下載目前較新的rubyinstaller-1.9.3-p0.exe 一鍵安裝包。這個安裝包除了包含ruby本身,還有許多有用的擴展(比如gems)和 幫助文檔。

雙擊安裝,安裝過程出現如下界面。如圖

這里我們選擇安裝路徑為 D:\Ruby。 下面有3個選項分別是:(1) 是否安裝tclTk支持。(2) 添加ruby命令路徑到系統環境變量PATH。(3)是否將 .rb 和.rbw 文件關聯到Ruby。
這里我們全部打勾。點擊“Install” 安裝完畢。

打開CMD窗口,運行 ruby -v 顯示ruby當前版本號。如圖

你也可以輸入 ruby -e 'puts "hello world" ',則顯示 hello world。

也可以打開記事本寫一段代碼如: puts "hello world",保存為 test.rb,然后在CMD中 運行 ruby test.rb 則顯示結果 hello world。

我想你不甘心就用記事本來寫程序吧,這里推薦一款輕巧的代碼編輯器SciTE,支持多種語法高亮顯示及高亮導出,且免費開源。以前的RubyInstaller 自帶SciTE,而新版需要自己下載。官方地址:scintilla.org windows下有綠色版和安裝版,安裝版下載 點這里

安裝SciTE后,打開它,我們輸入代碼 puts "hello world" ,點擊菜單=>file=>save 保存文件為test.rb。 然后按鍵盤F5,右側輸出窗口出現結果。如圖:

二、下載并安裝RubyGems

RubyGems是一個方便而強大的Ruby程序包管理器,類似RedHat的RPM。它將一個Ruby應用程序打包到一個gem里,作為一個安裝單元。 特點:能遠程安裝包,包之間依賴關系的管理,簡單可靠的卸載,查詢機制,能查詢本地和遠程服務器的包信息,能保持一個包的不同版本,基于Web的查看接口,能查看你安裝的gem的信息。

從官方下載RubyGems,以zip版本為例,解開壓縮包,從CMD提示窗口下進入setup.rb所在目錄, 運行 ruby setup.rb 即可安裝。

較新的Ruby版本已經包含RubyGems了,因此我們不用手動下載安裝了。只需在CMD窗口輸入指令:gem update --system ,耐心等待一段時間,已有的RubyGems會更新到目前最新的版本。如圖。

三、下載并安裝Rails

從CMD提示窗口輸入指令:gem install rails 開始安裝rails。

如不想安裝文檔文件,可以輸入:gem install rails --no-rdoc --no-ri 

程序自動下載并安裝rails, 耐心等待。如圖所示:

安裝完成后,你可以在路徑 D:\Ruby\lib\ruby\gems\1.9.1\gems 看到些東西,都是rails的包文件,與ruby安裝在同一目錄下。

這時在CMD提示窗口輸入指令: rails -v  顯示rails的版本號。如圖:

四、下載并安裝DevKit

DevKit 是windows平臺下編譯和使用本地C/C++擴展包的工具。它就是用來模擬Linux平臺下的make, gcc, sh來進行編譯。這個方法目前僅支持通過RubyInstaller安裝的Ruby。

下載Devkit:http://rubyinstaller.org/downloads

如果上面的地址打不開,就從這里下載:https://github.com/oneclick/rubyinstaller/downloads/

我們這里使用目前較新的版本 DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe

安裝步驟:

1) 將下載 DevKit 解壓到 D:\DevKit 目錄。
2) 打開 CMD 窗口,進入 D:\DevKit 目錄,輸入ruby dk.rb init 。#生成config.yml,這里會檢查將要添加DevKit支持的Ruby列表,只支持通過RubyInstaller安裝的Ruby。
3) 輸入 ruby dk.rb install  #開始安裝。
4) 輸入 ruby dk.rb review  #檢查要添加DevKit支持的Ruby列表是否有誤,可以略過。
5) 輸入 gem install rdiscount --platform=ruby 。#這一步只是驗證DevKit是否安裝成功,如果能安裝rdiscount成功說明安裝DevKit成功,也可以不做。


整個過程如圖:

 

五、創建一個Rails項目

打開CMD提示窗口,進入D盤,輸入指令:rails new www ,會在D盤創建名稱為www 的rails項目結構。

接著進入www目錄,輸入指令:rails server ,啟動rails自帶的 webrick 服務器。如圖:

 打開瀏覽器輸入地址 http://localhost:3000/ 看到歡迎頁面,如下圖:

下來我們讓Rails說 "Hello"

Rails是一個MVC框架,Rails接收來自瀏覽器的請求,對請求進行解讀以找到合適的控制器,再調用控制器中合適的方法。然后,控制調用合適的視圖,把結果顯示給用戶。Rails提供了快速創建視圖和控制的方法,打開CMD命令窗口。進入到剛才的www項目目錄,輸入命令:rails generate controller say hello 如圖:

 

下面我打開上圖中提示的視圖文件,路徑是 /項目目錄/app/views/say/hello.html.erb

修改為如下形式:

    <h1>Say#hello</h1> 
    <p>現在時間是:<%=@time%></p> 

注意:將視圖文件 hello.html.erb 另存為UTF-8編碼格式,否則中文會出現亂碼。說明一下是UTF-8編碼,而不是 UTF-8 +BOM 編碼,BOM 是通過文件開頭添加幾個字符表示文件編碼的標準。但是只有微軟用了,x-nix 、PHP、Ruby 不認。

接著打開控制器文件,路徑是 /項目目錄/app/controllers/say_controller.rb

修改為

  class SayController < ApplicationController
     def hello
        @time=Time.now 
     end 
   end

打開瀏覽器訪問:http://localhost:3000/say/hello,結果如下圖。

如果要更改首頁,讓首頁顯示Hello。只需2步:

1) 找到 /項目目錄/config/route.rb 文件,查找到這行  # root :to => 'welcome#index'  去掉注釋并設置為自己的控制器,修改為 :

     root :to => 'say#hello'

2) 刪除 /項目目錄/public/index.html 文件,因為rails優先讀取public目錄下的靜態文件。

再次訪問:http://localhost:3000,首頁顯示Say#Hello,于上圖的內容一致。

六 創建一個使用MySQL數據庫的Rails項目

1) 打開CMD窗口,進入D盤,輸入命令:rails new work --database Mysql,在D盤創建名稱為 work 的rails 項目結構。

2) 必須將libmysql.dll庫拷貝到 Ruby安裝目錄的Bin目錄下(D:\Ruby\Bin)。否則在啟動服務器時候會提示:“沒有找到LIBMYSQL.dll,因此這個應用程序未能啟動。重新安裝應用程序可能會修復此問題。”

    下載地址:http://www.mysql.com/downloads/connector/c/

    我們這里下載 mysql-connector-c-noinstall-6.0.2-win32.zip ,解壓縮,在lib目錄里面的libmysql.dll 就是我們要找的。

3) 修改數據庫的配置信息。在 /項目目錄/config/database.yml 文件中,分別對應 “開發”、“測試”,“生產” 數據庫的配置,把他們修改為自己的配置。

    其中development是我們開發中要實際使用的數據庫。一定要注意在username: 和 password: 后面至少要保留一個空格。

4) 在CMD窗口輸入rake db:craete  命令,會在msyql 中創建由配置信息中所設置的數據庫。

5) 我們用scaffold來生成代碼,在CMD中輸入下面指令:

    rails generate scaffold post title:string body:string addTime:datetime

    這時候會創建controller, views, models和數據庫腳本,但此時還沒有創建表。

    再輸入:rake db:migrate 創建表。完成。

6) 執行命令 rails server

    通過瀏覽器訪問:http://localhost:3000/posts 這個頁面已經為我們生成了增刪改查代碼,OK。

相關文檔:Windows平臺下快速搭建Ruby on Rails的開發環境

QQ群:WEB開發者官方群(515171538),驗證消息:10000
微信群:加小編微信 849023636 邀請您加入,驗證消息:10000
提示:更多精彩內容關注微信公眾號:全棧開發者中心(fsder-com)
網友評論(共2條評論) 正在載入評論......
理智評論文明上網,拒絕惡意謾罵 發表評論 / 共2條評論
登錄會員中心
快乐彩票开奖号码 鹤山市| 万年县| 湖南省| 大石桥市| 中阳县| 永福县| 桃园市| 喀喇沁旗| 保定市| 革吉县| 常德市| 长海县| 白山市| 宝山区| 辉南县| 本溪| 安多县| 芦山县| 东莞市| 禄劝| 江油市| 虎林市| 黄浦区| 玉门市| 兰溪市| 上虞市| 东至县| 屏南县| 赤峰市| 石城县| 桦南县| 阿坝县| 黄山市| 泰来县| 翼城县| 宁海县| 天门市| 新田县| 吉水县| 谷城县| 潜江市| 丹江口市| 嘉祥县| 正安县| 大荔县| 慈利县| 桃江县| 尤溪县| 遂溪县| 乐陵市| 吴忠市| 杭锦后旗| 邛崃市| 江永县| 舞钢市| 沅江市| 资兴市| 甘肃省| 阿克苏市| 丰城市| 远安县| 军事| 宁都县| SHOW| 长岭县| 商水县| 枣庄市| 临泽县| 武定县| 青浦区| 成武县| 海南省| 墨脱县| 化德县| 阿坝| 麻栗坡县| 沾益县| 中卫市| 合川市| 汶上县| 西畴县| 武功县| 宜兰市| 桐梓县| 南昌县| 天全县| 石首市| 绍兴市| 来宾市| 巴林左旗| 澜沧| 木兰县| 襄樊市| 旌德县| 新化县| 昭觉县| 子长县| 丹阳市| 舞钢市| 湄潭县| 宜都市| 茂名市| 元氏县| 蓝田县| 祁连县| 西畴县| 时尚| 当雄县| 岱山县| 墨脱县| 惠东县| 肥乡县| 古交市| 高碑店市| 无锡市| 炎陵县| 青浦区| 称多县| 苍溪县| 定陶县| 崇左市| 水富县| 贵溪市| 德安县| 辽源市| 新邵县| 淄博市| 嘉鱼县| 红桥区| 茌平县| 五大连池市| 阳山县| 廊坊市| 醴陵市| 耿马| 三门县| 龙岩市|