歡迎使用 Rails
Rails 是什麼?
Rails 是網頁應用程式架構,包含建立資料庫後端網頁應用程式所需的一切,符合 Model-View-Controller (MVC) 模式。
了解 MVC 模式是了解 Rails 的關鍵。MVC 將您的應用程式分成三層:Model、View 和 Controller,每層都有特定的責任。
Model 層
Model 層 代表網域模型(例如帳戶、產品、人員、文章等),並封裝特定於您應用程式的商業邏輯。在 Rails 中,資料庫後端的模型類別衍生自 ActiveRecord::Base
。 Active Record 讓您可以將資料庫列中的資料呈現為物件,並使用商業邏輯方法來修飾這些資料物件。雖然大多數 Rails 模型都由資料庫支援,但模型也可以是一般的 Ruby 類別,或實作由 Active Model 模組提供的介面集合的 Ruby 類別。
View 層
View 層 由「範本」組成,負責提供應用程式資源的適當表示。範本可以採用各種格式,但大多數檢視範本都是包含嵌入式 Ruby 程式碼的 HTML(ERB 檔案)。檢視通常會被轉譯來產生控制器回應或產生電子郵件的內文。在 Rails 中,檢視產生是由 Action View 處理的。
Controller 層
Controller 層 負責處理傳入的 HTTP 要求並提供適當的回應。通常,這表示傳回 HTML,但 Rails 控制器也可以產生 XML、JSON、PDF、特定於行動裝置的檢視等。控制器會載入和操作模型,並轉譯檢視範本以產生適當的 HTTP 回應。在 Rails 中,傳入的請求會由 Action Dispatch 路由到適當的控制器,而控制器類別衍生自 ActionController::Base
。Action Dispatch 和 Action Controller 會在 Action Pack 中一起套件化。
架構和函式庫
Active Record、Active Model、Action Pack 和 Action View 可以在 Rails 外部獨立使用。
此外,Rails 還附帶
-
Action Mailer,一個用於產生和發送電子郵件的函式庫
-
Action Mailbox,一個用於在 Rails 應用程式中接收電子郵件的函式庫
-
Active Job,一個用於宣告工作並讓它們在各種排隊後端上執行的架構
-
Action Cable,一個用於將 WebSockets 與 Rails 應用程式整合的架構
-
Active Storage,一個用於將雲端和本機檔案附加到 Rails 應用程式的函式庫
-
Action Text,一個用於處理豐富文字內容的函式庫
-
Active Support,一個實用類別和標準函式庫擴充套件的集合,對 Rails 很實用,也可以在 Rails 外部獨立使用
入門
-
如果您尚未在命令提示字元中安裝 Rails,請進行安裝
$ gem install rails
-
在命令提示字元中,建立一個新的 Rails 應用程式
$ rails new myapp
其中「myapp」是應用程式名稱。
-
將目錄變更為
myapp
並啟動網路伺服器$ cd myapp $ bin/rails server
使用
--help
或-h
執行以取得選項。 -
前往
http://localhost:3000
,您將看到 Rails 開機畫面,上面顯示您的 Rails 和 Ruby 版本。 -
依照指南開始開發您的應用程式。您可能會發現以下資源很方便
貢獻
我們鼓勵您為 Ruby on Rails 貢獻心力!請查看 Ruby on Rails 貢獻指南,以取得如何進行的指南。 加入我們!
嘗試報告 Rails 中可能的安全漏洞嗎?請查看我們的 安全政策,以取得如何進行的指南。
預計在 Rails 及其子專案的程式碼庫、問題追蹤器、聊天室和郵件清單中互動的每個人都應遵循 Rails 行為準則。
授權
Ruby on Rails 已在 MIT 授權 下發布。