跳至內容 跳至搜尋

歡迎使用 Rails

Rails 是什麼?

Rails 是一個 Web 應用程式架構,包含建立根據 模型-檢視-控制器 (MVC) 模式建立資料庫支援之 Web 應用程式所需的一切。

理解 Rails 的關鍵在於了解 MVC 模式。MVC 將你的應用程式劃分為三層:模型、檢視和控制器,每一層都有特定的責任。

模型層

模型層 代表網域名型(例如帳戶、產品、人員、文章等)並封裝特定於你應用的業務邏輯。在 Rails 中,資料庫支援的模型類別派生自 ActiveRecord::BaseActive Record 允許你將資料庫列中的資料顯示為物件,並用業務邏輯方法來修飾這些資料物件。儘管大多數 Rails 模型都由資料庫支援,但模型也可以是普通的 Ruby 類別,或實作由 Active Model 模組提供的介面集的 Ruby 類別。

檢視層

檢視層 由「樣板」組成,負責提供你應用程式資源的適當表示。樣板可以使用各種格式,但大多數檢視樣板都是包含嵌入式 Ruby 程式碼的 HTML (ERB 檔案)。檢視通常會轉譯為產生控制器回應或產生電子郵件的本體。在 Rails 中,檢視轉譯由 Action View 處理。

控制器層

控制器層 負責處理傳入的 HTTP 請求並提供適當的回應。通常,這表示傳回 HTML,但 Rails 控制器也可以產生 XML、JSON、PDF、特定於行動裝置的檢視等等。控制器會載入並操作模型,並轉譯檢視樣板以便產生適當的 HTTP 回應。在 Rails 中,傳入的請求由 Action Dispatch 路由到適當的控制器,而控制器類別則派生自 ActionController::Base。Action Dispatch 和 Action Controller 整合在 Action Pack 中。

架構和函式庫

Active RecordActive ModelAction 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 之外獨立使用

開始使用

  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 及 Ruby 版本的 Rails 引導畫面。

  5. 遵循指南來開始開發您的應用程式。下列資源可能對您很有用

貢獻

我們鼓勵您為 Ruby on Rails 做出貢獻!請參閱 貢獻至 Ruby on Rails 指南 以取得相關指示。 加入我們吧!

想回報 Rails 中可能的安全性漏洞嗎?請參閱我們的 安全性政策 以取得相關指示。

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

授權

Ruby on Rails 是根據 MIT 授權 發佈的。