rails創(chuàng)建應(yīng)用程序?qū)嵗?/h1>
更新時(shí)間:2014年06月25日 08:44:56 投稿:junjie
這篇文章主要介紹了rails創(chuàng)建應(yīng)用程序?qū)嵗?本文從零開始教你完成一個(gè)rails網(wǎng)站應(yīng)用的創(chuàng)建過(guò)程,需要的朋友可以參考下
安裝了Rails框架之后,你同時(shí)也得到了一個(gè)新的命令行工具:rails。這個(gè)工具可以用于構(gòu)造每個(gè)新的Rails應(yīng)用程序。
為什么我們需要這么一個(gè)工具——我是說(shuō),為什么不抄起最順手的編輯器,從頭開始編寫應(yīng)用程序的每行代碼呢?呃……我們確實(shí)可以這樣做,但Rails可以在 幕后變很多戲法,讓我們只需要做最少量的配置即可運(yùn)行一個(gè)應(yīng)用程序。為了讓這些戲法能夠生效,Rails必須能夠找到應(yīng)用程序中的各種組件。正如我們稍后 將會(huì)看到的,這就意味著我們必須創(chuàng)建某種固定的目錄結(jié)構(gòu),并且將我們的代碼放在合適的地方。 rails這個(gè)命令可以幫我們創(chuàng)建這一目錄結(jié)構(gòu),并且生成一些標(biāo)準(zhǔn)的Rails代碼。
現(xiàn)在,我們來(lái)創(chuàng)建第一個(gè)Rails應(yīng)用程序:打開shell窗口,進(jìn)入文件系統(tǒng)的某個(gè)地方——你希望將應(yīng)用程序目錄結(jié)構(gòu)保存在那里的某個(gè)地方。在我們的例 子中,我們將把項(xiàng)目創(chuàng)建在一個(gè)名為work的目錄之下。因此,我們?cè)谶@個(gè)目錄中用rails命令創(chuàng)建一個(gè)名為demo的應(yīng)用程序。在這里要加些小心:如果 已經(jīng)存在一個(gè)名叫demo的目錄,rails會(huì)詢問(wèn)你是否要覆蓋已有的文件。
復(fù)制代碼 代碼如下:
dave> cd work
work> rails demo
create
create app/apis
create app/controllers
create app/helpers
: : :
create log/development.log
create log/test.log
work>
上述命令創(chuàng)建了一個(gè)名為demo的目錄。進(jìn)入這個(gè)目錄,列出它的全部?jī)?nèi)容(在Unix中使用ls命令,在Windows中使用dir命令),你應(yīng)該會(huì)看到這樣的一堆文件和子目錄:
復(fù)制代碼 代碼如下:
work> cd demo
demo> ls -p
CHANGELOG app/ db/ log/ test/
README components/ doc/ public/ vendor/
Rakefile config/ lib/ script/
突然面對(duì)那么多目錄(還有它們包含的文件)也許會(huì)讓你感到有點(diǎn)害怕,不過(guò)我們完全不用理會(huì)它們的存在?,F(xiàn)在,我們只需要用到它們中的一個(gè),也就是public目錄。
正如它的名字所暗示的,public目錄包含了我們希望暴露給最終用戶看到的那些文件。這里的關(guān)鍵文件是分發(fā)器 (dispatcher):dispatch.cgi、dispatch.fcgi、以及dispatch.rb。分發(fā)器負(fù)責(zé)接收用戶從瀏覽器發(fā)出的請(qǐng) 求,并將這些請(qǐng)求引導(dǎo)至應(yīng)用程序中的程序代碼。這幾個(gè)文件很重要,不過(guò)我們目前還不需要接觸它們。
你還會(huì)看到,在demo目錄下有一個(gè)script子目錄,其中存放的是一些工具腳本,我們?cè)陂_發(fā)應(yīng)用程序的過(guò)程中會(huì)用到它們。現(xiàn)在,我們就要使用其中名叫 server的腳本,它會(huì)啟動(dòng)一個(gè)獨(dú)立運(yùn)行的WEBrick[1]服務(wù)器,我們新建的Rails應(yīng)用程序就將在其中運(yùn)行。那么,在繼續(xù)前進(jìn)之前,我們先把 剛才編寫(或者說(shuō),生成)的應(yīng)用程序啟動(dòng)起來(lái)吧。
復(fù)制代碼 代碼如下:
demo> ruby script/server
=> Rails application started on http://0.0.0.0:3000
[2005-02-26 09:16:43] INFO WEBrick 1.3.1
[2005-02-26 09:16:43] INFO ruby 1.8.2 (2004-08-24) [powerpc-darwin7.5.0]
[2005-02-26 09:16:43] INFO WEBrick::HTTPServer-start: pid=2836 port=3000
從啟動(dòng)輸出信息的最后一行就可以看出,我們?cè)?000端口[2]上啟動(dòng)了一個(gè)web服務(wù)器。我們可以打開瀏覽器,訪問(wèn)http://localhost:3000,就會(huì)看到這個(gè)應(yīng)用程序。
我們可以讓W(xué)EBrick一直在這個(gè)命令行窗口中運(yùn)行。稍后我們編寫應(yīng)用代碼之后,只要在瀏覽器中訪問(wèn),就會(huì)看到命令行窗口輸出請(qǐng)求的相關(guān)信息。如果想要停止WEBrick的運(yùn)行,可以在命令行窗口中按下Ctrl-C鍵。
現(xiàn)在,我們已經(jīng)讓新應(yīng)用跑了起來(lái),但其中還沒(méi)有我們自己編寫的代碼。下面,我們就要改變這種情況。
[1] WEBrick是一個(gè)純Ruby編寫的web服務(wù)器,隨Ruby 1.8.1或更高版本發(fā)行。
[2] URL地址中的“0.0.0.0”表示W(wǎng)EBrick會(huì)接收來(lái)自所有接口的連接。在Dave的OS X系統(tǒng)上,這就表示不管來(lái)自本地接口(127.0.0.1和::1)還是來(lái)自LAN連接的請(qǐng)求都會(huì)被WEBrick接收到。
現(xiàn)在,我們來(lái)編寫一個(gè)極其簡(jiǎn)單的web應(yīng)用,以驗(yàn)證Rails已經(jīng)成功地在我們的機(jī)器上落戶了。在此過(guò)程中,我們還會(huì)簡(jiǎn)單介紹Rails應(yīng)用的工作方式。
相關(guān)文章
-
詳解Ruby on Rails中的mailer相關(guān)使用
這篇文章主要介紹了詳解Ruby on Rails中的mailer相關(guān)使用,主要針對(duì)其相關(guān)的編程風(fēng)格給出建議,需要的朋友可以參考下 2015-08-08
-
在Ruby on Rails中優(yōu)化ActiveRecord的方法
這篇文章主要介紹了在Ruby on Rails中優(yōu)化ActiveRecord的方法,本文來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下 2015-04-04
-
Ruby中執(zhí)行Linux shell命令的六種方法詳解
這篇文章主要介紹了Ruby中執(zhí)行Linux shell命令的六種方法詳解,這些方法包括exec、system、反引號(hào)、IO、Open3、Open4等命令,需要的朋友可以參考下 2015-01-01
-
Ruby中使用設(shè)計(jì)模式中的簡(jiǎn)單工廠模式和工廠方法模式
這篇文章主要介紹了Ruby中使用設(shè)計(jì)模式中的簡(jiǎn)單工廠模式和工廠方法模式的示例,這兩種模式經(jīng)常被用于Ruby on Rails開發(fā)的結(jié)構(gòu)設(shè)計(jì)中,需要的朋友可以參考下 2016-03-03
-
Ruby中使用多線程隊(duì)列(Queue)實(shí)現(xiàn)下載博客文章保存到本地文件
這篇文章主要介紹了Ruby中使用多線程隊(duì)列(Queue)實(shí)現(xiàn)下載博客文章保存到本地文件,本文給出了實(shí)現(xiàn)代碼、并對(duì)代碼的核心部分做了講解,同時(shí)給出了運(yùn)行效果圖,需要的朋友可以參考下 2015-01-01
-
ruby寫掃描當(dāng)前網(wǎng)頁(yè)所有url的腳本
用ruby寫的掃描當(dāng)前網(wǎng)頁(yè)所有url的腳本,對(duì)于學(xué)習(xí)ruby的朋友是個(gè)不錯(cuò)的實(shí)例 2008-06-06
最新評(píng)論
安裝了Rails框架之后,你同時(shí)也得到了一個(gè)新的命令行工具:rails。這個(gè)工具可以用于構(gòu)造每個(gè)新的Rails應(yīng)用程序。
為什么我們需要這么一個(gè)工具——我是說(shuō),為什么不抄起最順手的編輯器,從頭開始編寫應(yīng)用程序的每行代碼呢?呃……我們確實(shí)可以這樣做,但Rails可以在 幕后變很多戲法,讓我們只需要做最少量的配置即可運(yùn)行一個(gè)應(yīng)用程序。為了讓這些戲法能夠生效,Rails必須能夠找到應(yīng)用程序中的各種組件。正如我們稍后 將會(huì)看到的,這就意味著我們必須創(chuàng)建某種固定的目錄結(jié)構(gòu),并且將我們的代碼放在合適的地方。 rails這個(gè)命令可以幫我們創(chuàng)建這一目錄結(jié)構(gòu),并且生成一些標(biāo)準(zhǔn)的Rails代碼。
現(xiàn)在,我們來(lái)創(chuàng)建第一個(gè)Rails應(yīng)用程序:打開shell窗口,進(jìn)入文件系統(tǒng)的某個(gè)地方——你希望將應(yīng)用程序目錄結(jié)構(gòu)保存在那里的某個(gè)地方。在我們的例 子中,我們將把項(xiàng)目創(chuàng)建在一個(gè)名為work的目錄之下。因此,我們?cè)谶@個(gè)目錄中用rails命令創(chuàng)建一個(gè)名為demo的應(yīng)用程序。在這里要加些小心:如果 已經(jīng)存在一個(gè)名叫demo的目錄,rails會(huì)詢問(wèn)你是否要覆蓋已有的文件。
dave> cd work
work> rails demo
create
create app/apis
create app/controllers
create app/helpers
: : :
create log/development.log
create log/test.log
work>
上述命令創(chuàng)建了一個(gè)名為demo的目錄。進(jìn)入這個(gè)目錄,列出它的全部?jī)?nèi)容(在Unix中使用ls命令,在Windows中使用dir命令),你應(yīng)該會(huì)看到這樣的一堆文件和子目錄:
work> cd demo
demo> ls -p
CHANGELOG app/ db/ log/ test/
README components/ doc/ public/ vendor/
Rakefile config/ lib/ script/
突然面對(duì)那么多目錄(還有它們包含的文件)也許會(huì)讓你感到有點(diǎn)害怕,不過(guò)我們完全不用理會(huì)它們的存在?,F(xiàn)在,我們只需要用到它們中的一個(gè),也就是public目錄。
正如它的名字所暗示的,public目錄包含了我們希望暴露給最終用戶看到的那些文件。這里的關(guān)鍵文件是分發(fā)器 (dispatcher):dispatch.cgi、dispatch.fcgi、以及dispatch.rb。分發(fā)器負(fù)責(zé)接收用戶從瀏覽器發(fā)出的請(qǐng) 求,并將這些請(qǐng)求引導(dǎo)至應(yīng)用程序中的程序代碼。這幾個(gè)文件很重要,不過(guò)我們目前還不需要接觸它們。
你還會(huì)看到,在demo目錄下有一個(gè)script子目錄,其中存放的是一些工具腳本,我們?cè)陂_發(fā)應(yīng)用程序的過(guò)程中會(huì)用到它們。現(xiàn)在,我們就要使用其中名叫 server的腳本,它會(huì)啟動(dòng)一個(gè)獨(dú)立運(yùn)行的WEBrick[1]服務(wù)器,我們新建的Rails應(yīng)用程序就將在其中運(yùn)行。那么,在繼續(xù)前進(jìn)之前,我們先把 剛才編寫(或者說(shuō),生成)的應(yīng)用程序啟動(dòng)起來(lái)吧。
demo> ruby script/server
=> Rails application started on http://0.0.0.0:3000
[2005-02-26 09:16:43] INFO WEBrick 1.3.1
[2005-02-26 09:16:43] INFO ruby 1.8.2 (2004-08-24) [powerpc-darwin7.5.0]
[2005-02-26 09:16:43] INFO WEBrick::HTTPServer-start: pid=2836 port=3000
從啟動(dòng)輸出信息的最后一行就可以看出,我們?cè)?000端口[2]上啟動(dòng)了一個(gè)web服務(wù)器。我們可以打開瀏覽器,訪問(wèn)http://localhost:3000,就會(huì)看到這個(gè)應(yīng)用程序。
我們可以讓W(xué)EBrick一直在這個(gè)命令行窗口中運(yùn)行。稍后我們編寫應(yīng)用代碼之后,只要在瀏覽器中訪問(wèn),就會(huì)看到命令行窗口輸出請(qǐng)求的相關(guān)信息。如果想要停止WEBrick的運(yùn)行,可以在命令行窗口中按下Ctrl-C鍵。
現(xiàn)在,我們已經(jīng)讓新應(yīng)用跑了起來(lái),但其中還沒(méi)有我們自己編寫的代碼。下面,我們就要改變這種情況。
[1] WEBrick是一個(gè)純Ruby編寫的web服務(wù)器,隨Ruby 1.8.1或更高版本發(fā)行。
[2] URL地址中的“0.0.0.0”表示W(wǎng)EBrick會(huì)接收來(lái)自所有接口的連接。在Dave的OS X系統(tǒng)上,這就表示不管來(lái)自本地接口(127.0.0.1和::1)還是來(lái)自LAN連接的請(qǐng)求都會(huì)被WEBrick接收到。
現(xiàn)在,我們來(lái)編寫一個(gè)極其簡(jiǎn)單的web應(yīng)用,以驗(yàn)證Rails已經(jīng)成功地在我們的機(jī)器上落戶了。在此過(guò)程中,我們還會(huì)簡(jiǎn)單介紹Rails應(yīng)用的工作方式。
相關(guān)文章
詳解Ruby on Rails中的mailer相關(guān)使用
這篇文章主要介紹了詳解Ruby on Rails中的mailer相關(guān)使用,主要針對(duì)其相關(guān)的編程風(fēng)格給出建議,需要的朋友可以參考下2015-08-08
在Ruby on Rails中優(yōu)化ActiveRecord的方法
這篇文章主要介紹了在Ruby on Rails中優(yōu)化ActiveRecord的方法,本文來(lái)自于IBM官方網(wǎng)站技術(shù)文檔,需要的朋友可以參考下2015-04-04
Ruby中執(zhí)行Linux shell命令的六種方法詳解
這篇文章主要介紹了Ruby中執(zhí)行Linux shell命令的六種方法詳解,這些方法包括exec、system、反引號(hào)、IO、Open3、Open4等命令,需要的朋友可以參考下2015-01-01
Ruby中使用設(shè)計(jì)模式中的簡(jiǎn)單工廠模式和工廠方法模式
這篇文章主要介紹了Ruby中使用設(shè)計(jì)模式中的簡(jiǎn)單工廠模式和工廠方法模式的示例,這兩種模式經(jīng)常被用于Ruby on Rails開發(fā)的結(jié)構(gòu)設(shè)計(jì)中,需要的朋友可以參考下2016-03-03
Ruby中使用多線程隊(duì)列(Queue)實(shí)現(xiàn)下載博客文章保存到本地文件
這篇文章主要介紹了Ruby中使用多線程隊(duì)列(Queue)實(shí)現(xiàn)下載博客文章保存到本地文件,本文給出了實(shí)現(xiàn)代碼、并對(duì)代碼的核心部分做了講解,同時(shí)給出了運(yùn)行效果圖,需要的朋友可以參考下2015-01-01
ruby寫掃描當(dāng)前網(wǎng)頁(yè)所有url的腳本
用ruby寫的掃描當(dāng)前網(wǎng)頁(yè)所有url的腳本,對(duì)于學(xué)習(xí)ruby的朋友是個(gè)不錯(cuò)的實(shí)例2008-06-06

