2008年4月4日 星期五

小試ROR--Ruby on Rails 完全新手手冊



本篇文章由某G學弟死盯加上學了一點新東西做點筆記,對以後可以省掉不少找重覆資料的時間(我計性很差 = ="),所以就從最簡單的部分開始吧!!

準備

ROR的相關歷史簡介為了要符合DRY的精神,所以請自行參考相關書籍(其實是自己懶的寫=>踢飛)。最重要的還是先去官網看一看,目前已經有中文化的官網了(大心),不過說實在的,還蠻鳥的,看英文版的比較實在XXD。雖然在ptt上面大大比較推說自行下載ruby、rails、mySQL,然後自行分別安裝,不過正因為科技始終來自於惰性,所以還是下載了 Instant Rails來使用。
先來看一下Instant Rails裡面有什麼

嗯...有架過網站的人對裡面一些東西應該不陌生才對,不過這裡並不對裡面的東西討論(迷之音:那你幹蠻寫出來阿~"~),重點在於第三項,rails的版本是2.0.2。就一般程式語言來說,為了要向下相容,較高的版本通常能夠吃以前的東西。但很不幸的(對於初學者來說),Rails2.0以後的版本為了要實行REST拿掉了動態scaffold以及pagintation,改成了外掛形式,必須要另外安裝才能使用。而靜態的scaffold語法也較以往不同,詳細請參考 rails 2.0無法使用靜態的scaffold功能 此篇文章。

安裝

安裝Instant Rails很簡單,這邊以windows環境使用Instant Rails2.0做範例。解壓縮下載的檔案到目地資料夾後,執行InstantRails.exe,出現問題選項選擇"是",即可完成。同資料夾下有個use_ruby.cmd,看了一下裡面的內容後,應該是要在系統註冊path變數用的,不過我點了一下到是沒有作用,所以還是手動設定。設定法如下:控制台=>系統=>進階=>環境變數=>系統變數 找到變數'PATH'按一下編輯,把ruby\bin的位置輸入,還有mysql\bin的位置也要,基本上會跟use_ruby.cmd這個檔案裡面的位置會一樣(這裡面本來就是要設定系統變數的ㄇㄟ)。基本上這樣就安裝完畢拉~~!

執行

在執行方面,會較建議使用文字命令模式(命令提示字元,commond line mode)來執行整個環境。因為我們在上面已經做過設定系統變數:path的關係,現在就可以直接打上irb按下enter,這樣馬上就進入ruby介面。這...雖然一般沒什麼在用(對我來說),不過在測試上卻是一個好幫手。一樣,詳情參考ruby程設相關書籍。
現在來稍微觀察一下Instant Rails的目錄結構,有幾個看一就懂得像是ruby, apache, mysql就不管他了,其他的看起來也沒什麼特別重要。php資料夾內有個phpMyAdmin可以用來管理mySQL,要用的話要放到www的資料夾下(此apache伺服器預設跟目錄),rails_apps裡面放了兩個網站範例,有空可以玩玩看至於實際架站的方法有兩三種,這個因為目前還不熟,所以就先pass拉。
目前就只要知道在要測試網站的目錄下執行 ruby script/server 就可以在loaclhost:3000找到你自己的網站啦!!

Hello World!

0.先進入文字命令列模式
1.在你自己要建立專案的資料夾下鍵入 'rails 專案名' (ex: rails helloworld),這樣ruby就會自動幫你建置許多需要檔案
2.進入專案資料夾(ex:cd helloworld),並找到public資料夾,把裡面的index.html給取代掉就好啦!!
3.執行 ruby script/server
4.在瀏覽器的網址列上輸入 http://localhost:3000/ 就看的到拉~~

不過照這樣寫出來的東西總覺得有點沒意思,那麼我們可以怎麼改呢
那我們就把index.html的內容改成下列的樣子
<html>
<head><title>Hello World</title></head>
<body>
<h1><%= h('Hello World!!')%></h1>
<br />
</body></html>

嗯...這樣是不是比較有fu了一點。其中h這個method是用來完整輸出引數,也就是說不論放什麼字元下去,他都能在網頁上忠實的呈現出來,是不可或缺的小幫手^^"



第一篇大致上就到這邊結束,下面列一些好用的
一、參考書目(依優先順序排列)[ISBN]
  • 超越 Java:探討程式語言的未來 (Beyond Java)[9867794761]
  • Agile Web Development with Rails, 2/e[0977616630]
  • Programming Ruby: The Pragmatic Programmers' Guide, 2/e[0974514055]
第一本書談到了相當多的rails的術語與細節,不可不看,第二本則僅供參考,因為書中的範例還是使用了rails1.2的架構,拿到2.0來做會有問題(最前面有提到),而第三本因為還沒看,所以哈~

二、工具程式(主要程式除外)
  • AptanaStudio
  • Navicat
  • UltraEdit
前兩套都有免費版的可以下載,使用到目前為止也沒遇到什麼不順手的,免費版的就很好用了^^。第一套是ruby的IDE,使用套件(rails)更新後就可以直接啟動WEBrick,除錯上帶來不少方便性。第二套是mySQL的GUI管理工具,會用access就會用了,比起phpMyAdmin是要方便許多,lite版也夠一般使用了。最後一套應該大家都知道,雖然用來寫ruby不甚順手,但比起記事本還是方便許多。

沒有留言: