跳到內容 跳到搜尋

歡迎使用 Rails

Rails 是什麼?

Rails 是網頁應用程式架構,包含建立資料庫後端網頁應用程式所需的一切,符合 Model-View-Controller (MVC) 模式。

了解 MVC 模式是了解 Rails 的關鍵。MVC 將您的應用程式分成三層:Model、View 和 Controller,每層都有特定的責任。

Model 層

Model 層 代表網域模型(例如帳戶、產品、人員、文章等),並封裝特定於您應用程式的商業邏輯。在 Rails 中,資料庫後端的模型類別衍生自 ActiveRecord::BaseActive 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 RecordActive ModelAction PackAction View 可以在 Rails 外部獨立使用。

此外,Rails 還附帶

  • Action Mailer,一個用於產生和發送電子郵件的函式庫

  • Action Mailbox,一個用於在 Rails 應用程式中接收電子郵件的函式庫

  • Active Job,一個用於宣告工作並讓它們在各種排隊後端上執行的架構

  • Action Cable,一個用於將 WebSockets 與 Rails 應用程式整合的架構

  • Active Storage,一個用於將雲端和本機檔案附加到 Rails 應用程式的函式庫

  • Action Text,一個用於處理豐富文字內容的函式庫

  • Active Support,一個實用類別和標準函式庫擴充套件的集合,對 Rails 很實用,也可以在 Rails 外部獨立使用

入門

  1. 如果您尚未在命令提示字元中安裝 Rails,請進行安裝

    $ gem install rails
    
  2. 在命令提示字元中,建立一個新的 Rails 應用程式

    $ rails new myapp
    

    其中「myapp」是應用程式名稱。

  3. 將目錄變更為 myapp 並啟動網路伺服器

    $ cd myapp
    $ bin/rails server
    

    使用 --help-h 執行以取得選項。

  4. 前往 https://127.0.0.1:3000,您將看到 Rails 開機畫面,上面顯示您的 Rails 和 Ruby 版本。

  5. 依照指南開始開發您的應用程式。您可能會發現以下資源很方便

貢獻

我們鼓勵您為 Ruby on Rails 貢獻心力!請查看 Ruby on Rails 貢獻指南,以取得如何進行的指南。 加入我們!

嘗試報告 Rails 中可能的安全漏洞嗎?請查看我們的 安全政策,以取得如何進行的指南。

預計在 Rails 及其子專案的程式碼庫、問題追蹤器、聊天室和郵件清單中互動的每個人都應遵循 Rails 行為準則

授權

Ruby on Rails 已在 MIT 授權 下發布。