Rails 中的 Hello World

  1. 你好**,Rails**

    要讓 Rails 說 Hello,你至少需要建立一個控制器和一個檢視。

    控制器的目的是接收應用程式的特定請求。路由決定哪個控制器接收哪些請求。通常,每個控制器都有多條路由,不同的路由可以通過不同的操作提供服務。每個操作的目的是收集資訊以將其提供給檢視。

    檢視的目的是以人類可讀的格式顯示此資訊。要做的一個重要區別是它是收集資訊的控制器,而不是檢視。檢視應該只顯示該資訊。預設情況下,檢視模板使用稱為 eRuby(嵌入式 Ruby)的語言編寫,該語言在傳送給使用者之前由 Rails 中的請求週期處理。

    要建立一個新的控制器,你需要執行控制器生成器,並告訴它你想要一個名為歡迎的控制器,並使用一個名為 index 的操作,如下所示:

    $ bin/rails generate controller Welcome index
    

    Rails 將為你建立多個檔案和路徑。

    create  app/controllers/welcome_controller.rb
     route  get 'welcome/index'
    invoke  erb
    create    app/views/welcome
    create    app/views/welcome/index.html.erb
    invoke  test_unit
    create    test/controllers/welcome_controller_test.rb
    invoke  helper
    create    app/helpers/welcome_helper.rb
    invoke  assets
    invoke    coffee
    create      app/assets/javascripts/welcome.coffee
    invoke    scss
    create      app/assets/stylesheets/welcome.scss
    
  2. 其中最重要的當然是位於 app/controllers/welcome_controller.rb 的控制器和位於 app/views/welcome/index.html.erb 的檢視。

    在文字編輯器中開啟 app/views/welcome/index.html.erb 檔案。刪除檔案中的所有現有程式碼,並將其替換為以下單行程式碼:

    <h1>Hello, Rails!</h1>
    
  3. 現在我們已經建立了控制器和檢視,我們需要在需要“Hello,Rails!”時告訴 Rails。現身。在我們的例子中,當我們導航到我們網站的根 URL http://localhost:3000 時,我們希望它出現。

    接下來,你必須告訴 Rails 你的實際主頁所在的位置。通過新增程式碼行’welcome #index’來編輯該檔案。它應該類似於以下內容:

    Rails.application.routes.draw do
      get 'welcome/index'
    
      root 'welcome#index'
    end
    
  4. root welcome#index 告訴 Rails 將請求對映到應用程式的根目錄到歡迎控制器的索引操作,並獲取 welcome/index 告訴 Rails 將請求對映到 http://localhost:3000/welcome/indexwelcome controller's index action。這是在你執行控制器生成器(bin / rails 生成控制器 Welcome 索引)時建立的。

  5. 耶,現在是真理的時刻。重新啟動 rails server 後啟動 Web 伺服器並在瀏覽器中導航到 http://localhost:3000。你會看到 “Hello,Rails!” 你輸入 app/views/welcome/index.html.erb 的訊息,表明這條新路由確實要進入 WelcomeController 的索引操作並正確呈現檢視。

本指南來自 guides.rubyonrails.org 。快樂黑客!