wndow環境下運行Ruby on Rails

來源:互聯網
上載者:User

mongrel是一個ruby的HTTP庫,用來寄舍ruby Web應用程式。其實不用Apache單用mongrel就可以運行RoR程式了,那篇網上教程中使用Apache是用來做Web代理,讓網站不會有 http://www.unbe.cn:8081/這樣的連接埠聲明。我只是做做實驗,多個連接埠號碼不會有什麼影響,所以我只配了mongrel。

    配置步驟如下:
    1. 下載並安裝Ruby
    2. 安裝gem (Windows安裝包安裝的Ruby是內建gem的)
        2.1 到rubyforge下載gem
        2.2 解壓gem檔,並在命令列下執行setup: ruby setup.rb
    3. 安裝rails
        3.1 命令列下輸入: gem install rails –include-dependencies
         注: 請確認電腦有串連網路。這個安裝過程會持續一段時間,視網速而定。
    4. 安裝mongrel
        4.1 命令列下輸入: gem install mongrel –y
        4.2 中間會提示安裝什麼版本,我安裝的是最新版本的Win32版,其它版本我沒試過
    5. 安裝mongrel service
        5.1 命令列下輸入: gem install mongrel_service -y
        5.2 中間會提示安裝什麼版本,我安裝的是最新版本的Win32版,其它版本我沒試過
    6. 建立一個rails程式
        6.1 命令列下輸入: rails D:"railsdemo , rails就會自動建立所需要檔案到目標目錄下
        6.2 命令列下輸入: mongrel_rails service::install -N railsdemo -c d:"railsdemo -p 8082 –e production
         -e參數還可以是development,-p參數是服務的連接埠號碼,-N參數是服務的名稱
        6.3 現在Windows的服務列表中就會多一個railsdemo服務,啟動它
        6.4 到瀏覽器下測試網站 http://localhost:8082/ ,看到首頁還不算完,點擊”About your application’s environment”看看是否正常顯示。

 

 

5、服務的刪除和停止

mongrel_rails service::stop -N ent

如果需要從服務中登出該項服務,那麼:

mongrel_rails service::remove -N ent

如果需要安裝多個mongrel執行個體,那麼可以這樣:

mongrel_rails service::install -N ent0 -c d:"ruby"mywork"ent -p 3000 –e production

mongrel_rails service::install -N ent1 -c d:"ruby"mywork"ent -p 3001 –e production

 

 

 

這裡說一下我的經驗之談,如果你和我一樣,把 Ruby 安裝到了一個包含空格的目錄(例如:C:"Program Files"Ruby),那麼你在試圖安裝 RubyGems 或用它安裝一些東西時可能遇到一些麻煩,表現為,安裝過程看似順利結束後,相應的命令(例如 gem、rails、rake)還是不可用,若試圖調用將報錯“檔案名稱、目錄名或卷標文法不正確”。這其實是這些命令的源檔案內容不對勁引起的,解決方案 也簡單,在 Ruby/bin 目錄下找到這些命令的源檔案(例如 gem.bat、rails.bat、rake.bat),把其中的“@"ruby.exe"" "%~dpn0" %*”改為“@"ruby.exe" "%~dpn0" %*”即可。

(把中間””去掉)

 

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

 

在windowsXp上安裝ruby on rails的sqlite3-ruby的問題解決

1、如果已經安裝了sqlite3的話可以跳到第3步,否則下載sqlite3.exe和sqlite3.dl兩個檔案放入ruby的安裝目錄下的bin目錄,比如我的是D:"ruby"bin"

2、執行以下命令

gem install sqlite3-ruby 

安裝sqlite3的ruby驅動。

3、現在就可以進行ROR開發了。比如我這裡要實現mybook,首先執行

rails mybook -d mysql  

之所以加上"-d mysql"是將資料庫改為mysql(預設為sqlite3),然後要修改/mybook/config/下面的database.yml,比如我的修改如下:

development:  

 adapter: mysql  

 encoding: utf8  

 database: mybook_development  

 username: root  

 password: root  

 host: localhost  

 

test:  

 adapter: mysql  

 encoding: utf8  

 database: mybook_test  

 username: root  

 password: root  

 host: localhost  

 

production:  

 adapter: mysql  

 encoding: utf8  

 database: mybook_production  

 username: root  

 password: root  

 host: localhost 

4、建立資料庫,執行

rake db:create:all 

 

 

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

5分鐘三步走,做出你我的第一個rails項目

 

首先下載一鍵安裝包InstantRails-2.0-win
地址:http://files.rubyforge.mmmultiworks.com/instantrails/InstantRails-2.0-win.zip
這個很全 ruby rails mysql都有了 編輯器可以去ruby"scite目錄下找scite.exe 有高亮文法的 很好用!

D:"InstantRails-2.0-win"ruby"myproject 我的學習目錄
1 產生工程
加上環境變數後在命令列
rails chapter-1
產生項目chapter-1,
cd chapter-1在項目目錄下:
ruby script/server
啟動ruby內建伺服器WEBrick伺服器
瀏覽器指向http://localhost:3000/ 將看到歡迎畫面

2建立控制器 顯示你的話
ruby script/generate controller Greeting index
瀏覽器定位到http://localhost:3000/Greeting/index 發現ruby提示你這個index的位置在哪兒。Greeting標誌出controller index標誌出動作 預設動作是index,可以不寫 直接輸入:http://localhost:3000/Greeting/效果一樣
使用controller顯示你的話
app"controllers的Greeting_controller.rb中定義動作
def index
  render :text => "<h1>Welcome to your first rails</h1>"
end
你再重新整理下瀏覽器就有你的話啦
3將controller綁定到view修改controller裡的index方法
def index
  @welcome_message="Welcome to your first rails"
end

app"views"greeting  index.html.erb裡輸入
<h1><%= @welcome_message%></h1>
然後頁面定位到
http://localhost:3000/Greeting/index 可以看到你的頁面編輯效果了

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.