--- title: 12th 鐵人賽 (Day_03) MVC架構?(1) tags: 12th 鐵人賽 --- # 12th 鐵人賽 (Day_03) 相信各位常常聽到MVC架構,在 Rails 裡利用Model、View、Controller來處理從使用者那邊打過來的要求。簡易圖片為下:  當使用者點下了網頁的一個連結後: 1. 相當於像sever發出了一個**請求(request)** 2. routes檔案裡所設定的路徑,去找到相對應的Controller 3. Controller根據身上的action把你指到相對應的頁面(View);或是直接請Model更新資料 4. 頁面上面所要呈現的資料,就交由Model幫你從資料庫裡撈出來,再傳回給View 6. 交由Controller,最後再一次回應(response)給使用者。 上面就是Rails裡的MVC架構的實作方法,若用點菜來做個簡單的比喻: 當我點了一盤菜: 1. 相當於我發了一個請求,店員會將請求送往廚房。 2. 廚房裡的大廚根據我點的菜,像學徒們下達命令 3. 請學徒甲負責去煮出我要的菜。 4. 學徒乙幫忙去拿取所需要的材料,交給學徒甲 5. 學徒甲煮完後交由大廚,大廚請店員上菜 若我們把上面兩個說明結合起來: 1. 店員 = Server或routes (決定菜單是送往廚房,而不是外面的飲料吧台區) 2. 大廚 = Controlle (將請求分配下去) 3. 學徒甲 = View (負責做出菜餚) 4. 學徒乙 = Model (負責去拿取材料(資料)) 不知道這樣的比喻對於大家有沒有更淺顯易懂了呢?若有其他問題,歡迎在下面留言。 不過話又說回來,到底為什麼要搞得那麼麻煩呢? 在學 Rails 之前,我很認真的以為一個頁面就只有一個檔案呢!XD 明天就來解答使用MVC的好處吧!
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up