我想寫 Ruby on Rails (Windows 篇)

隨著鐵道迷的增加,愈來愈多 Web 開發者想要投入 RoR 的開發,這篇文章主要是分享我在 Windows 上開發 RoR 的環境配置,供想入門的朋友作為參考。

準備要安裝的軟體

為了在 Windows 上開發 RoR,我會安裝下列幾個軟體:

  1. JDK 6

    Netbeans 一定要你裝 JDK,我也不太喜歡它為什麼一定要 JDK,只裝 JRE 還不行咧....

  2. Netbeans 6 Ruby (Development version)

    這是為了有一個整合式開發環境(IDE),除了免去初學者害怕的一連串指令操作之外,也有一些 syntax highlight、code completion 及 code snippets 等等功能,更重要的是,它能夠支援 UTF-8,更免去一些人在 Windows 上開發時搞不清字元編碼問題的煩惱。

  3. MySQL 5.0 Database Server Community Edition

    開發 Web application 幾乎都會用到資料庫,所以這裡選擇大家很常用的 MySQL,Windows 版本,透過 Installer 還能幫你把 MySQL Database Server 作成 Windows 服務,開機後就會自動執行了。

  4. MySQL GUI Tools

    資料庫的管理工具,裝了這個才不用在命令列下指令來管理你的 MySQL Database Server。

  5. (optional) Subversion

    這是用來作版本控制的軟體,Netbeans 6 有內建 svn 的介面,不過機器上還是需要有執行檔。另外,如果你想要有整合到檔案總管的 svn ,可以考慮使用 TortoiseSVN

  6. (optional) MRI(所謂的 native 版本) Ruby on Windows

    這是官方版本的 Ruby,如果你不喜歡 JRuby,Netbeans 6 也可以讓你換用 native 的 Ruby,不過這樣你還得去下載 RubyGems 回來安裝。

接下來就介紹這些軟體的安裝步驟。

軟體安裝步驟

JDK 6

到 Sun 的 Java 官方網頁,下載最「純」的 JDK,不需要其它的 bundle(如果你想要也可以啦)

下載 JDK
Netbeans 6 Ruby

首先,連結到 Netbeans Development Downloads 的網頁,因為 Netbeans 6 還沒有正式 release,所以現在只能先用 Development version,進入 latest 目錄後可以看到有許多種類的 Netbeans 6 可以下載:

選擇下載的 Netbeans 版本

這裡我們就選擇精簡的 Ruby 版本就可以了,除非你還想要開發 Java。

下載回來,開始安裝,它就會檢查你的 JDK 以及要你設定安裝的目錄,然後就等它安裝好:

安裝 Netbeans
MySQL 5.0 Database Server Community Edition

到 MySQL 的官方下載 Community Edition 的網頁,然後根據你的 Windows 平台選擇含 Installer 版本的安裝檔。

選擇下載的 MySQL 版本

下載回來解壓縮後,執行 Setup.exe 就會開始安裝 MySQL Database Server 了,安裝時 type 請選擇 Complete,安裝完畢後,Installer 會要你開始設定 (Configure) MySQL,以下是 step by step:

  1. 選擇 Detailed Configuration,Next »
    conf_mysql
  2. 因為是開發用途,所以選擇 Developer Machine,Next »
    conf_mysql2
  3. 資料庫的用途,沒特別偏好就選 Mutifunctional Database,偏好會對 Transaction 最佳化的話,則選擇 Transactional Database。(Ruby-MySQL 在 create_table 時預設會用 transaction-based 的 InnoDB storage engine)
    conf_mysql2
  4. 接下來就是設定 Database 的資料檔要放在哪裡、估計會有多少個連線,這些就可以自由設定。然後 TCP/IP 及 Strict Mode 都要勾選。
  5. 再來就是語系的部份,選擇 Best Support 這個選項,因為它會採用 UTF-8 作為預設的字元編碼。
    選擇字元編碼
  6. 接下來則是問你要不要裝 MySQL 裝成 Windows Service,以便 Windows 啟動後就直接啟動 MySQL Database Server。還有就是在 CMD 下加入 mysql 的執行目錄到 $PATH 變數中,如果你會在 CMD 下指令操作 MySQL 的話,就勾選吧!
  7. 然後設定一個 root 密碼,最後按下 Execute 就會開始設定了。

剩下的安裝就沒什麼好介紹的了(介紹下去有灌水嫌疑),反正就是安裝點一點,一直 Next 就裝好了。

建立資料庫

為了給之後建立的 RoR 專案使用資料庫,在 MySQL Database Server 及 GUI Tools 都安裝好後,執行 MySQL Administrator ,輸入剛才設定的 root 密碼,就可以進入 MySQL 的管理介面了!然後選擇 Catalogs 類別,在下方的視窗中按右鍵選擇 Create New Schema... 來建立新的資料庫:

建立 db

先輸入個 foo 作為資料庫的名稱,然後建立一個使用者來使用這個資料庫。在 User Administration 的地方建立一個名為 foo 的使用者,然後設定它的密碼,接著在 Schema Privileges 的 tab 中,把 foo 的權限全部給使用者 foo:

建立 db

最後再 Apply Changes 就好了。

啟動 Netbeans 6

在啟動 Netbeans 6 之前,有一個地方一定要修改一下,這是為了讓 Windows 上的 Netbeans 6 會使用 UTF-8 作為預設的字元編碼,所以請在桌面上或是程式集選單中的 Netbeans 捷徑按右鍵 » 內容,在目標處改成:

"C:Program FilesNetBeans 6.0 200709101200binnetbeans.exe" -J-Dfile.encoding=UTF-8

加入 UTF-8 支援

啟動 Netbeans 之後,寫 RoR project 的部份就可以參考我的前作「用 Netbeans 開發 Ruby on Rails 程式」。然後在設定 database.yml 前,別忘了到 Ruby Gems 裡去安裝 mysql 這個函式庫。

若沒有下文,本篇應該會被認為是灌篇數的文章,所以要來多介紹一點東西啦~

設定 Ruby 的部份

在 Netbeans 選單上 Tool » Options 裡,有個 Ruby 的分類,如果你電腦裡同時有 MRI Ruby 及 JRuby 的話,Netbeans 還會提醒你要選擇用哪個 Ruby:

which_ruby

當然,之後也可以在更改設定就是了:

conf_ruby

安裝 Ruby Gems

在選單中的 Tool » Ruby Gems 裡,可以直接透過 GUI 介面來安裝所需要的函式庫。

nb_rubygems

值得一提的是,在 Windows 上,即便是用 JRuby 作為主要的 Ruby Interpreter,但因為 Ruby-MySQL 的函式庫已經有編好的 Windows 版本可以下載,所以也可以直接裝 ruby gems 裡的 mysql 函式庫來用。

IDE 的幫助...

當我們用 Netbeans 建立一個 Ruby on Rails 的專案後,可以在 project 上面按右鍵,看看這個 IDE 究竟把怎樣的功能整合進來呢?

NB_IDE

最主要的,它能夠直接按右鍵來作 Generate 的動作,還有包裝好可以使用的 Rake tasks、Migrations,而且也能直接在這選單中啟動 Console 及安裝 plugin,當然,要直接啟動 RoR server 來進行測試也可以在選單中直接 Run,能有 IDE 的支援真是太幸福了!

另外,Netbeans 也支援在 Mac 上頗受歡迎的 TextMate 中 Code Snippet 的功能。簡單地說,就是可以設定打幾個字、按下 tab 就幫忙完成一整個段落的 code。你可以在選單上 Tool » Options 裡的 Editor 區,有個 Code Template 的 tab ,進去之後你就可以在裡面設定針對不同類型的檔案可以使用怎樣的 code snippet,比方說我就在 RHTML 檔案裡面設定了 doctype 這個 code template:

NB_IDE

如此一來,我只要在 RHTML 檔裡打入 doctype 再按下 tab 就會幫我展開我設定好的 template 了!

這篇文章就先介紹到這裡,之後對於用 Netbeans 寫 RoR 還有什麼心得的話,再寫文章來分享吧!

  • soyoungla

    您好~
    想跟你請教一下安裝的問題
    我前面都按照您的步驟
    但是到安裝MYSQL時
    ((7.然後設定一個 root 密碼,最後按下 Execute 就會開始設定了。
    剩下的安裝就沒什麼好介紹的了(介紹下去有灌水嫌疑),反正就是安裝點一點,一直 Next 就裝好了。–>您的步驟後))
    我在最後一個會不行安裝耶
    如圖(下網址)
    http://go2.tw/19w

    不好意思唷~才疏學淺~還勞煩您多多指教指教~感謝您喔^^

  • 看起來好像是你的 MySQL service 沒有跑起來,
    所以它在設定一些權限資料時失敗了 🙁

  • vimer

    vim不错。

  • Pingback: Debian / Ubuntu Linux 的 Ruby on Rails 環境架設 - Tsung's Blog()