Ruby on rails 2.0.2傻瓜入門之Hello world

來源:互聯網
上載者:User

毫不例外,和所有其他的開源項目一樣,如果你想進入Ruby on rails的世界,會發現異常的的艱難,文檔很少,而且很零散,
下載下來的檔案缺乏基本的說明,本人的親身體驗就是一個典型例子,不廢話了,現在開始介紹:
一、安裝環境<windows>
Ruby on rails網站:http://www.rubyonrails.org/
1、在這裡下載Ruby 1.8.6  http://rubyforge.org/frs/?group_id=167
其中已經包含rubygems 0.9.4,就不需要額外下載了,或者你也可以直接升級到1.1.1版本
2、如果你的網路夠快,運行下面命令下載程式包自動安裝
gem install rails --include-dependencies
否則,下載stand-alone packages 來手工安裝,這裡包含幾個檔案:
rails-2.0.2.zip http://rubyforge.org/frs/download.php/29361/rails-2.0.2.zip
rails-2.0.2.gem http://rubyforge.org/frs/download.php/29554/rails-2.0.2.gem
網上有文章介紹,將rails-2.0.2.zip放在ruby的安裝目錄,運行gem install rails就可以自動解壓安裝了,呵呵,我試了很多次,好像這種方法根本就是不行,
原作者也是語焉不詳,咱們就不深究了,說到底,rails運行需要下面的依賴包,然後才能安裝rails
activesupport
activerecord
actionpack
actionmailer
activeresource
其實這些依賴包已經包含在rails-2.0.2.zip檔案中的vendor\rails目錄下面,依次進入對應目錄下的pkg子目錄中就有相應的gem檔案,安裝這些就可以了。例如

C:\rails\vendor\rails\activesupport\pkg>dir
 磁碟機 C 中的卷沒有標籤。
 卷的序號是 3754-1BDB

 C:\rails\vendor\rails\activesupport\pkg 的目錄

2008-04-22  17:51    <DIR>          .
2008-04-22  17:51    <DIR>          ..
2007-12-16  19:05    <DIR>          activesupport-2.0.2
2007-12-16  19:05           234,496 activesupport-2.0.2.gem
2007-12-16  19:05           233,039 activesupport-2.0.2.tgz
2007-12-16  19:05           285,376 activesupport-2.0.2.zip
               3 個檔案        752,911 位元組
               3 個目錄  6,119,768,064 可用位元組

C:\rails\vendor\rails\activesupport\pkg>gem install activesupport

所以手工安裝就只需要安裝上麵包,最後再安裝rails-2.0.2.gem就可以了。
安裝完畢之後,運行rails -v,可以顯示版本Rails 2.0.2

二、Hello world起步
說句實話,第一個rails web程式有誰希望是一個串連mysql或者其他資料庫的例子,至少我不這樣希望,但是在網上流行的很多入門中第一個例子就是串連資料庫,示範一個不用寫什麼代碼就可以實現資料的增、刪、改的例子,儘管很炫,但是對於我等入門者來說還是太麻煩了,Hello world才是我們希望要的。
(註:不少流行的電子書、教程也是這樣資料庫的例子,羅列一下:《Rails Cookbook》《Rails for Java Developers》《Rails Recipes》
官方介紹的教程:http://www.onlamp.com/pub/a/onlamp/2006/12/14/revisiting-ruby-on-rails-revisited.html
Rails 2.0 入門指導 http://www.lupaworld.com/action_viewstutorial_itemid_10205.html )
而且有一個問題,2.0的有些東西和1.X相比變化了,所以網上很多教程是基於1.x的,不少人又要走彎路了!
1、建立WEB應用
運行rails c:\ruby\projects\sample建立一個需要的sample應用,該操作會建立一些基本的目錄架構、必需的檔案,建好後可以進入目錄看看效果。

2、啟動WEB Server,測試效果
進入c:\ruby\projects\sample目錄,運行ruby script/server啟動伺服器,然後開啟網址http://localhost:3000/可以看到初始頁面

3、準備Sqllite,很遺憾,我們不想涉及資料庫,可以還是會遇到這個東東,在config\database.yml檔案中就可以看到它的影子,沒辦法,這個必須安裝,否則後面會遇到錯誤。
這裡下載http://rubyforge.org/frs/?group_id=254 檔案sqlite3-ruby-1.2.1-mswin32.gem,運行gem install sqlite3-ruby安裝。
還必須下載sqllite3.dll檔案,真麻煩啊,可以從這裡下載 http://www.sqlite.org/download.html 下載檔案sqlitedll-3_5_8.zip,解壓到ruby的bin目錄,否則後面會報找不到sqlite3.dll檔案的錯誤。

4、由於rails採用MVC的架構組織網頁程式,因此可以運行script/generate來產生需要的檔案,該指令碼內建了controller, mailer, model, scaffold, web_service幾種程式,這裡我們需要的是controller,網上還可以找到其他的產生器外掛程式,例如自動產生一個登入介面之類。
進入c:\ruby\projects\sample目錄,運行ruby script/generate controller Welcome hello
類似下面的輸出,這裡Welcome指定Control名稱,檔案welcome_controller.rb中產生一個class WelcomeController,類似於java中的Action了,其中有一個方法hello

C:\ruby\project\sample>ruby script/generate controller Welcome hello
      exists  app/controllers/
      exists  app/helpers/
      create  app/views/welcome
      exists  test/functional/
      create  app/controllers/welcome_controller.rb
      create  test/functional/welcome_controller_test.rb
      create  app/helpers/welcome_helper.rb
      create  app/views/welcome/hello.html.erb

app\controllers\welcome_controller.rb檔案加上下面的代碼1class WelcomeController < ApplicationController
2
3  def hello
4    @welcome_message = "Welcome to your first Rails application"
5  end
6end
7

app\views\welcome\hello.html.erb檔案如下內容 1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
 2<HTML>
 3 <HEAD>
 4  <TITLE> Hello world </TITLE>
 5 </HEAD>
 6
 7 <BODY>
 8<h1>Welcome#hello ,<%= @welcome_message %></h1>
 9<p>Find me in app/views/welcome/hello.html.erb</p>
10 </BODY>
11</HTML>
12

大功告成,啟動web server,輸入網址http://localhost:3000/welcome/hello就可以看到效果了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.