iT邦幫忙

2022 iThome 鐵人賽

DAY 19
1
自我挑戰組

電腦、網路大解密 系列 第 19

Day 19 - Routing 和 Controller

  • 分享至 

  • xImage
  •  

上次我們快速做了一個超陽春的 Blog,但是只能讓大家稍微感受一下開發一個 Rails 專案要做的事情,其中許多細節沒有講解得很清楚,接下來幾天我們就來一一說明。

我們上網時,其實是瀏覽器將我們的請求送出給 Server,而一般上網使用的請求協定是 HTTP/HTTPS。HTTP 請求會有 URL 代表資源,還會有不同的 Method,會是一個動詞,表示要對資源做什麼。所以 HTTP 請求可以對 Server 上的資源做事情,一般常用的 Method 有 GET、POST、PATCH、PUT、和 DELETE,會對應到對於 Server 資源的讀取、新增、修改、刪除等動作。

config/routes.rb 中,可以設定

Rails.application.routes.draw do
  get '/', to: 'application#index'
end

表示說我們希望 Server 收到 URL 是 / 的 GET 請求時,會使用 ApplicationController 的 index 方法來處理。而上次我們使用 resource 的寫法

Rails.application.routes.draw do
  resources :articles
end

意思是我們要使用 Rails 預設的 Resource Routing,會和 Controller 搭配,將對於 articles 這個資源相關的請求,對應到 ArticlesController 底下的 method,由相對應的 method 來處理請求。例如我們昨天用

bin/rails routes

印出的列表就是表示

  • GET /articles 對應 ArticlesController 的 method index
  • POST /articles 對應 ArticlesController 的 method create

上一篇
Day 18 - Rails 簡單範例實作篇
下一篇
Day 20 - View 和 HTML
系列文
電腦、網路大解密 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言