成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

跑起來吧 Ruby on Rails開發初體驗

開發 后端
Ruby on Rails,Ruby世界里的這個“殺手應用”,讓Ruby在短短一年時間里成為焦點的一個框架,文章將介紹Ruby on Rails的入門級知識。

最初看到很多關于Ruby on Rails極富吸引人應用, 我也和很多比較性急程序員一樣,了解了Ruby語法之后就一頭扎進Rails的絢麗宮殿,體驗快速開發Web應用的成就感,卻不得不時時因為缺乏對Ruby語言的深入了解而感到迷惑:這個類里什么都沒有,它為什么會工作?那個地方寫的代碼是什么意思?這么多文件時怎樣一個層次?

51CTO相關文章推薦:Ruby on Rails的核心特性是什么?

在經歷初期Ruby語言迷茫之后. 慢慢開始運用上手.發現只要放平心態, 踏踏實實學習一樣東西也并非難事. 會初步使用Ruby但這只是一門語言. 總不能天天抱著語言一個勁狂啃, 也應該干干應用層次上活. 看到Rails社區上每天提交大量案例 總是讓我按捺不住親身體驗快感, 所以一直打算寫Ruby on Rails 關于Web快速開發運用. 一直抽不出時間靜下心來體會著里面運用.

當然對于Ruby,以及Ruby on Rails應用,我接觸時間不長。只能本著一個初學者探索態度逐步摸索前行,這其中體會也只有自己心里知道.  所以難免會有不少理解上紕漏和偏差,還望各位拍磚能收下留情。說了這么多關于Ruby體會轉入正題吧,應用經典實例Hello World!

準備工作

<1>初步了解Ruby和Ruby on Rails.

如果你不知道Ruby為何物?請參考51CTO之前報道《Ruby on Rails入門之道》、《進入Ruby on Rails世界》等相關文章。

<2>構建Ruby on Rails開發環境.

關于構建Ruby on Rails開發環境,以及安裝Ruby on Rails,請參考最詳細的Ruby on Rails安裝步驟。

進入開發

<1>確認開發環境版本

進入這個階段前傾確認你Ruby on Rails開發環境已經搭建. 確認已經安裝后 請確認Ruby和Rails礦建各自版本. 本實例開發環境版本如下:

◆Ruby Version: 1.8.6.

◆Rails Version: 2.3.5.

◆Operator System: Windows 7.

Rails仍在高速發展階段,雖然版本有些落后但并不妨礙我們去演這個Rails框架應用。

<2>創建***個應用程序

安裝Rails框架后,在應用中同時也得到一個新的命令行:Rails. 類似Cmd中利用Rails -v就是查看當前Rails版本,這個命令行工具有助你構建一個新的Rails Application. 當我們馬上要創建一個Rails Application.時你肯定會問用什么編譯工具?這個問題暫且放在這里.

安裝Rails框架后多了一個Rails命令行. Rails命令行可以后臺操作中幫助我們只需利用最少配置即可創建并運行一個應用程序. 為了使Rails后臺操作能夠發揮作用, Rails必須找到應用程序各種組件.(也就是應用程序的目錄結構). 這就意味必須創建固定目錄結構,把我們代碼放在正確目錄下用來調用, 而這些目錄結構創建就是Create new Rails Application中默認執行了. 那我們創建一個Rails Application.確定他有工作目錄:C:\User\Chenkai\WorkDemo 命名為myfirstdemo 打開Cmd. 進入工作目錄輸入:rails myfirstdemo。

創建***個應用程序

自動創建完成后, 注意我創建硬盤地址:C:\User\Chenkai\WorkDemo 目錄下, 創建請確認是否存在myfirtdemo文件夾否則會覆蓋源文件. 來查看一下目錄結構:

目錄結構

創建目錄結構一目了然. 關于這么多目錄暫且先不要管他. 目前我只需用到他們中一個也就是Public目錄. Public顧名思義這個目錄文件是最終暴露給用戶看到的.這里面有個幾個關鍵文件Dispatcher[分發器].dispatcher.cgi, dispatch.fcgi, 和dispatch.rb[ruby文件]. 分發器主要負責從用戶接受瀏覽器發送的請求并將這些請求引導至指定應用程序代碼中. 有點類似Control.

在硬盤創建MyfirstDemo我們能看見一個Script文件夾:

Script文件夾

該目錄存放的是一些工具腳本, 開發程序中我們會用到它,現在我們使用其中一個Server腳本. 它會啟動一個獨立運行的WebBrick服務器[一個純Ruby編寫的Wbe服務器].我們新建的Rails Application就在其中運行, 把WebBrick啟動:

WebBrick啟動

從提示成功信息中能看出,在3000端口上創建一個WebBrick服務器, 我們打開http://localhost:3000/訪問看看效果:

效果

目前我們這個rails Application就算是運行起來, 只不過沒有自己編碼內容. 下一步添加一個Hello World!到程序中. 在添加之前我想說一下整個Hello World輸出過程, 其實就是MVC框架走的流程:

MVC框架

#p#

流程分析

用戶發送一個請求Rails, Rails接受請求后進行解析找到合適的Control, 再調用Control中合適方法進行處理, 返回一個特定視圖View. 將結果顯示給最終用戶.

Rails框架已經幫我們把絕大部分的"通信管道代碼"寫好了, 整個流程已經在Rails內部有機結合在一塊, 為了在頁面輸入一個"Hello World!" 我們還需要另外創建一個Control和一個View. 創建控制器: 同創建一個Rails Application一樣簡單. 這次調用的Script目錄下的Generate. 在CMD調用:

CMD調用

Controller的命名為sayhi,創建完成后我們可以在C:\Users\chenkai\WorkDemo\myfirstdemo\app\controllers目錄下找到Controller:

Controller

打開Controller文件看看:

打開Controller文件

簡單不能再簡單,SayhiController是一個空類, 繼承至ApplicationController因此當前類默認具有所有控制器行為.

說明: Ruby 符合<和C#繼承使用:符號功能等同意為繼承。有了Control類剩下編碼就是我們的工作了. 增加一個Action方法處理用戶請求, 現在我們又碰到一個問題就是關于這個Action方法的命名.

<3>Rails Reques URL命名

其實在Rails中控制器命名這個概念遠比你想象要復雜一些,當然這些為了演示目的暫且不提.對于 Request URL命名根據Rails內部自身用途作調整。例如:當請求一個路徑這個路徑請求就是我們當前的MyFirstDemo這個Rails Application. 路徑為:http://www.chenkai.com/online/myfirstdemo/sayhi/hello.

解析一下這個路徑:

解析一下這個路徑

Rails會根據路徑來判斷控制器名稱, 以及控制器內部即將被調用的Action的名稱,在如上路徑中Sayhi就是對應調用控制名稱, 而hello就是對應控制器下調用Action方法.

<4>創建Control中Action

在Request URL 命名中我們能夠看得出.我們只需在SayhiController中添加一個名稱為hello 的Action方法. 但是這個Action方法該做什么呢?其實這時的Action方法什么都不需要做, Action方法的職責是對視圖View顯示提供充分信息即可, 在目前這個HelloWorld程序中, 沒有信息需要Action方法去控制, 所以只需要定義空的Action方法即可.

創建Control中Action

<5>開始調用

定義好了Controller我們現在嘗試著直接調用,會出現一些路徑錯誤或提示Template is Missing。

提示這樣的錯誤主要原因: 我們定義好了Controller卻沒有明確配置好返回到用戶到底對應是哪個View. 其實在RAils中這種對應關系已經通過目錄結構制定好了, 我們創建一個Sayhi控制器那么View視圖應該在app/Views/Sayhi目錄下.只是因為這個目錄下沒有視圖 才回提示Missing錯誤. 所以我們需要在app/Views/Sayhi目錄下創建一個hello.rhtml文件:

 

  1. <html> 
  2. <head>hello rails i'm coming!head> 
  3. <body> 
  4. <h2>hello Rails! chenkai!h2> 
  5. body> 
  6. html> 

 

開始調用

保存, 到目前為止我們一個Controller和View視圖文件都創建, 也放在Rails規定制定目錄下,直接調用頁面輸出: Hello Rails. chenkai!至此一個關于Ruby on Rails hello World簡單示例算是告一段落了。

【編輯推薦】

  1. 安裝Ruby on Rails技巧講解
  2. Ruby on Rails入門之道
  3. RoR(Ruby on Rails)走入企業應用?
  4. 搭建Ruby on Rails開發環境
  5. Ruby on Rails性能優化七劍

 

責任編輯:王曉東 來源: 博客園
相關推薦

2012-05-15 13:29:20

HTML5

2009-04-29 14:40:17

2021-01-22 14:03:34

Flutter系統鴻蒙

2011-05-04 11:26:47

優化

2023-03-02 23:09:53

Node.jsC++JS

2022-12-06 09:03:44

代碼fork系統

2023-08-03 09:02:32

LangChain開發GLM

2021-01-12 11:12:58

大數據智慧交通

2024-05-27 09:01:22

2022-01-10 10:23:07

瀏覽器Vitenode

2015-08-04 17:46:19

戴爾anycloud云計算

2017-11-17 15:25:02

Java線程安全

2018-03-22 15:36:26

程序員RubyiOS

2023-01-31 07:42:29

代碼JDKMaven

2021-11-10 10:00:48

鴻蒙HarmonyOS應用

2009-08-27 10:21:22

Ruby on Rai

2014-04-18 17:12:00

樂跑手環

2009-12-14 15:37:35

Ruby on Rai

2009-07-20 09:12:54

Ruby on Rai

2009-08-06 09:13:36

Ruby on Rai
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区久久 | 亚洲一区视频在线 | 作爱视频免费观看 | 国产欧美日韩一区 | 国产精品高清在线 | 欧美成人精品在线观看 | 在线看无码的免费网站 | 国产日韩欧美一区二区 | 天天操人人干 | 午夜免费观看网站 | 日韩中文视频 | 国产视频久久 | 日韩在线xx | 天天天天天天天干 | 亚洲精品一区二三区不卡 | 亚洲精品日韩一区二区电影 | 久久人操| 999免费视频| 一本色道精品久久一区二区三区 | 久久精品国产久精国产 | 亚洲播放一区 | 精品成人在线视频 | 久草久草久草 | 欧美二区在线 | 一级片免费视频 | 国产成人精品在线播放 | 久久精品国产亚洲一区二区三区 | 黄色国产| 亚洲精品一级 | 国产精品久久国产精品 | 国产成人av在线播放 | 亚洲综合色视频在线观看 | av大片在线观看 | 久久久久国产精品 | 国产91丝袜在线播放 | 在线观看中文字幕 | 九九九精品视频 | 日韩av免费在线观看 | 美女视频一区二区三区 | 婷婷色国产偷v国产偷v小说 | 女人天堂av|