RadRails 是基于 Eclipse 的 IDE,用于進(jìn)行 Ruby on Rails 開(kāi)發(fā)。通過(guò)本文,您將了解 RadRails 的安裝、應(yīng)用程序窗口的結(jié)構(gòu)和使用、以及開(kāi)發(fā)應(yīng)用程序的主要步驟。
Ruby on Rails 的地位如日中天。隨著它的流行,開(kāi)發(fā)人員越來(lái)越迫切地需要一個(gè)集成開(kāi)發(fā)環(huán)境(IDE)來(lái)使 Rails 更容易使用。RadRails 是基于 Eclipse 的環(huán)境,能夠滿足大多數(shù)開(kāi)發(fā)人員的要求。
本文介紹了 RadRails IDE,并假定您已經(jīng)知道用 Ruby on Rails 開(kāi)發(fā) Web 應(yīng)用程序的方法,因此,本文將不會(huì)花時(shí)間說(shuō)明 Ruby or Rails 代碼,而將主要說(shuō)明 IDE 本身。
您想要趕時(shí)髦使用 Ruby on Rails,但又沒(méi)準(zhǔn)備好放棄十分好用的 IDE;或者,您可能已經(jīng)用 Rails 進(jìn)行了一段時(shí)間的開(kāi)發(fā)工作,但現(xiàn)在想要重新使用原來(lái)一直在用的編輯器。無(wú)論是什么原因促使您來(lái)使用 RadRails,好消息是 RadRails 的安裝和使用都很簡(jiǎn)單。此部分先介紹如何安裝 RadRails,然后再介紹如何使用 RadRails。
使用 RadRails 沒(méi)有任何先決條件。它可以運(yùn)行在任何裝有 Ruby V1.8.4、Rails V1.1 (或更高版本) 以及 Java™ V1.4 (或更高版本) 的 Microsoft® Windows®、Linux® 或 Mac OS X 系統(tǒng)上。
如果系統(tǒng)滿足這些要求,請(qǐng)從項(xiàng)目的 Web 站點(diǎn)獲取一個(gè) RadRails 副本 (請(qǐng)參閱 參考資料)。您還可以找到用于在已有的 Eclipse 安裝和代碼內(nèi)運(yùn)行 RadRails 的 Eclipse 插件的鏈接。注:如何使用這些發(fā)行版不在本文討論范圍內(nèi)。
下載適當(dāng)?shù)?zip 文件后,只需將其解壓縮并運(yùn)行 RadRails 可執(zhí)行文件。您可能需要調(diào)整 $PATH
以確保 RadRails 能夠找到已安裝的 Java。
![]() ![]() |
![]()
|
安裝 RadRails 之后,您就可以開(kāi)始使用了。此部分將快速介紹 RadRails 應(yīng)用程序并介紹如何瀏覽項(xiàng)目?jī)?nèi)和各項(xiàng)目的信息。啟動(dòng)一個(gè)項(xiàng)目的方法有兩種,包括啟動(dòng)新項(xiàng)目和導(dǎo)入已有項(xiàng)目。
不管您選擇使用哪種方法,開(kāi)始都是最重要的。學(xué)習(xí) RadRails 的最佳方法是接觸并使用它。但在此之前,請(qǐng)先看看下面的快速指南。
![]() ![]() |
![]()
|
讓我們先來(lái)看看包含一個(gè)項(xiàng)目的 RadRails 應(yīng)用程序,了解如何快速添加一個(gè)項(xiàng)目。
圖 1 所示為 RadRails 應(yīng)用程序。實(shí)際上,它顯示了 Rails “透視” 的應(yīng)用程序,但不必?fù)?dān)心這個(gè)小問(wèn)題??梢园阉醋魇且粋€(gè)分為六個(gè)區(qū)域的窗口:菜單欄、工具欄、瀏覽器和 Test::Unit 窗格、編輯器窗格、概要窗格和外部工具窗格。
![]() ![]() |
![]()
|
瀏覽項(xiàng)目?jī)?nèi)和各項(xiàng)目的信息
在瀏覽窗格內(nèi)可展開(kāi)、可收縮工作區(qū)內(nèi)已有項(xiàng)目的層次結(jié)構(gòu)。單擊一個(gè)項(xiàng)目將展開(kāi)該項(xiàng)目中包含的目錄和文件 (圖 2 顯示了一個(gè) RadRails 窗口,該窗口的瀏覽窗格中展開(kāi)了一個(gè)項(xiàng)目)。
只要項(xiàng)目被高亮顯示,對(duì)于 RadRails 里的所有其他功能,該項(xiàng)目就是活動(dòng)項(xiàng)目。此時(shí),允許運(yùn)行生成器、啟動(dòng) Web 服務(wù)器等。
雙擊一個(gè)文件將在編輯器窗格里的編輯器中打開(kāi)該文件。打開(kāi)多個(gè)文件將以選項(xiàng)卡的形式打開(kāi)這些文件。圖 3 顯示了在編輯器窗格中打開(kāi)四個(gè)文件。
![]() ![]() |
![]()
|
啟動(dòng)新項(xiàng)目很簡(jiǎn)單。單擊工具欄上的 New,或從菜單欄中選擇 File > New。通過(guò)任意一種方法都將打開(kāi) New 對(duì)話框。此對(duì)話框允許選擇適用于要啟動(dòng)的項(xiàng)目類型的向?qū)А_@些向?qū)нx項(xiàng)包括 Web 服務(wù)器配置、SQL 文件、Ruby 項(xiàng)目和類以及 Rails 項(xiàng)目 (我們?cè)诖颂幙吹降奈┮贿x項(xiàng))。
選擇 Rails > Rails Project,然后單擊 Next。將看到一個(gè)新屏幕,在該屏幕中輸入項(xiàng)目名稱。其他選項(xiàng)的默認(rèn)值用于此次實(shí)驗(yàn)應(yīng)當(dāng)完全沒(méi)問(wèn)題,但以后可能需要調(diào)整這些值:
做完必要更改后,單擊 Finish。這樣就創(chuàng)建了一個(gè)項(xiàng)目,在 RadRails 界面左側(cè)的 Rails 瀏覽器窗格中可以看到該項(xiàng)目。
![]() ![]() |
![]()
|
如果已經(jīng)有一個(gè) Rails 項(xiàng)目,并且想用它來(lái)創(chuàng)建項(xiàng)目而不是啟動(dòng)一個(gè)全新的項(xiàng)目,則可通過(guò)一種簡(jiǎn)單方法導(dǎo)入該項(xiàng)目。先單擊工具欄上的 New,或從菜單欄中選擇 File > New,就如同要啟動(dòng)一個(gè)新項(xiàng)目一樣。在對(duì)話框中選擇 Rails > Rails Project,然后單擊 Next。在為項(xiàng)目命名之后,選中 Generate Rails application skeleton 復(fù)選框以關(guān)閉該選項(xiàng)。然后單擊 Finish。
當(dāng)項(xiàng)目出現(xiàn)在 Rails 瀏覽器窗格中后,可以在該項(xiàng)目上單擊鼠標(biāo)右鍵打開(kāi)選項(xiàng)菜單。在此菜單中選擇 Import,將彈出 Import 對(duì)話框。選擇 General > File System,然后單擊 Next。執(zhí)行這些操作后就選擇了要導(dǎo)入的源項(xiàng)目。除了選擇源項(xiàng)目,還可以選擇要導(dǎo)入的文件夾 (此值默認(rèn)為項(xiàng)目的工作區(qū)),是否覆蓋已有文件 (默認(rèn)值為 no),是否要?jiǎng)?chuàng)建任何其他必需的文件或文件夾 (默認(rèn)值為 false),以及導(dǎo)入時(shí)僅限于所選文件夾 (默認(rèn)值為 true)。
當(dāng)選定目錄顯示在文件瀏覽窗口中后,可以選擇它 (錯(cuò)誤消息 "There are no resources currently selected for import" 將一直顯示在對(duì)話框的頂部,直至選擇一個(gè)選項(xiàng)),然后單擊 Finish 以導(dǎo)入文件。如果有任何副本,系統(tǒng)將顯示另一個(gè)對(duì)話框,詢問(wèn)是否要用導(dǎo)入的版本覆蓋原來(lái)的版本。
![]() ![]() |
![]()
|
啟動(dòng)項(xiàng)目之前,要先創(chuàng)建項(xiàng)目運(yùn)行所需的數(shù)據(jù)庫(kù)。創(chuàng)建數(shù)據(jù)庫(kù)的最佳方法是使用命令行:使用生成器創(chuàng)建移植腳本,然后編輯該腳本。在 RadRails 中將沿用同樣的模式。
在瀏覽窗格中單擊一個(gè)項(xiàng)目 (或項(xiàng)目里的一個(gè)資源),確保有選定的活動(dòng)項(xiàng)目。然后在外部工具窗格中單擊 Generators 選項(xiàng)卡以打開(kāi)生成器工具,如圖 4 所示。從窗格左上角的下拉式菜單中選擇 Migration 生成器。要運(yùn)行生成器,單擊右下角的 Go。
單擊 Go 將在編輯器窗格中打開(kāi)一個(gè)終端工具并在其中運(yùn)行生成器腳本,然后在該工具里顯示所有命令輸出。接著,可以在瀏覽器窗格中展開(kāi)項(xiàng)目樹(shù)的 db > migrate 分支,然后單擊文件名以在編輯器窗格里的編輯器中打開(kāi)文件 (參見(jiàn)圖 5)。當(dāng)根據(jù)需要編輯完移植腳本后,可以從 Rake 運(yùn)行該腳本,并開(kāi)始開(kāi)發(fā)應(yīng)用程序。
接下來(lái),讓我們重新來(lái)看生成器,從生成器開(kāi)始操作。這一次,選擇 Scaffold 生成器,然后在 Options 字段 (居中的字段,位于下拉式菜單和 Go 按鈕之間) 中將其命名為 Example Admin
。單擊 Go 以在終端工具中運(yùn)行生成器。
此時(shí),已經(jīng)有一個(gè)足夠能運(yùn)行 Web 服務(wù)器以及查看運(yùn)行狀況的應(yīng)用程序了。在外部工具窗格中單擊 Servers 選項(xiàng)卡,在窗格中顯示的列表中單擊相應(yīng)的服務(wù)器,然后單擊 Start (綠色箭頭,位于外部工具窗格頂層的小工具欄左側(cè)的第二個(gè)圖標(biāo))。將為應(yīng)用程序啟動(dòng) Web 服務(wù)器和控制臺(tái)??梢栽谕獠抗ぞ叽案裰袉螕?Console 選項(xiàng)卡 (現(xiàn)在為黑體) 訪問(wèn)此控制臺(tái) (參見(jiàn)圖 6)。
由于生成的框架包括單元測(cè)試,因此可以運(yùn)行這些單元測(cè)試。在先前討論時(shí)已經(jīng)設(shè)置了 Ruby 解析程序,是吧?默認(rèn)情況下,測(cè)試將通過(guò) (這些測(cè)試只斷定 true 為真),但可以通過(guò)強(qiáng)制出錯(cuò)來(lái)查看會(huì)發(fā)生什么情況。在瀏覽器窗格中選擇 Test > Unit > example_test.rb 編輯單元測(cè)試腳本,然后將 test_truth
方法中的斷言改為讀取 assert false
。現(xiàn)在,我們知道它將出錯(cuò)。
要運(yùn)行測(cè)試,在工具欄中單擊 Run Unit Tests (左側(cè)第三組按鈕中左數(shù)第三個(gè)按鈕)。由于測(cè)試出錯(cuò),靠近瀏覽窗格的 Test::Unit 選項(xiàng)卡頂層的綠色欄將變?yōu)榧t色,窗格中間的 Failures 選項(xiàng)卡中將顯示錯(cuò)誤列表 (本例中只有一個(gè)錯(cuò)誤),選定錯(cuò)誤的堆棧跟蹤也將顯示在窗格的 Failure Trace 字段中 (如果仔細(xì)查看,能注意到選項(xiàng)卡的標(biāo)題空白處還顯示了單元測(cè)試的運(yùn)行時(shí)間)。
單擊 Test::Unit 窗格中間的 Hierarchy 選項(xiàng)卡以查看當(dāng)前運(yùn)行出現(xiàn)的所有錯(cuò)誤的樹(shù)型視圖。在此選項(xiàng)卡 (或 Failures 選項(xiàng)卡) 中選中一個(gè)錯(cuò)誤也就選中了 Test::Unit 窗格里的所有其他選項(xiàng)卡中的相同錯(cuò)誤。
單擊工具欄上代表集成測(cè)試或功能測(cè)試的按鈕 (或單擊 Run All Tests 按鈕執(zhí)行所有測(cè)試) 可運(yùn)行相應(yīng)測(cè)試。這樣做將運(yùn)行相應(yīng)的一組測(cè)試,并提供以同樣的方式通過(guò) Test::Unit 窗格來(lái)訪問(wèn)結(jié)果。
![]() ![]() |
![]()
|
本文為您介紹了 Ruby on Rails 所用到的 RadRails IDE 的較高層次的知識(shí),介紹了如何安裝 RadRails、應(yīng)用程序窗口的結(jié)構(gòu)和使用,以及開(kāi)發(fā)應(yīng)用程序的主要步驟。接下來(lái)要進(jìn)行的操作取決于您的選擇。當(dāng)下載、安裝了 RadRails,并執(zhí)行完本文中介紹的步驟之后,您已具備了足夠的知識(shí)和能力來(lái)使用 RadRails 自行開(kāi)發(fā)應(yīng)用程序。
![]() | ||
| ![]() | Pat Eyler 是 LDS Church 的專業(yè)基礎(chǔ)架構(gòu)工程師,業(yè)余 Ruby 極客及夜間寫(xiě)手。他喜歡閱讀、烹飪、與家人共度美好時(shí)光,以及幫助構(gòu)建 Ruby 社區(qū)。 |
聯(lián)系客服