昨天把初步框架架起來
今天就來做個應用程式來試看看吧!
step1 初始化
我們要做一個 quotations 的應用程式
首先在 rainbow 外建立一個資料夾
1 | 建立 quotations 資料夾 |
1 | git 初始化 |
1 | 建立 config 資料夾 |
📃 web小辭典
▶ config檔
內容包含框架載入前的程式碼設定
以及框架中的組成元件、環境設定等
可以說框架最基本的設定都放在這個檔案中了
▶ app檔
基本的架構及框架功能都會放在這裡
包含 controllers、models、views、helpers 等
step 2 加入 gemfile
quotations 的框架是 Rainbow
所以我們要在 gemfile 加入 rainbow 並安裝
1 | 加入gemfile檔 |
還記得gemfile是什麼嗎? 點我回想
step 3 bundle install
建立 rainbow 套件
1 | bundle install |
建立完成就會跑出 Gemfile.lock (版本管理資料)
step4 建立 Rack
應用程式免不了傳送 HTTP request
所以我們要來設定 Rack
還記得 Rack 嗎? 點我回想
1 | # quotations/config.ru |
📃 web小辭典
▶ config.ru檔
Rack 基本設定,包含如何用 Rack 啟用應用程式
step5 啟動應用程式!
1 | rackup -p 3001 |
按進超連結就能看到 Hello World!
無法順利啟動,請確認下列幾件事情
- 確認PATH environment variable 有沒有包含 gem,沒有請更新
- 返回到最初,重新安裝 Ruby 及 gem
- 確認 gemspec 的 rack dependency 是設定在 runtime dependency 而非 development dependency
📃 web小辭典
▶ 怎麼確認 PATH environment variable
輸入下列指令,就會出現 RubyGems 的相關資訊
如果出現沒有這個指令的訊息就是要去更新囉
1 | gem env |
step 6 框架設定 Rack
應用程式的相關設定都要放在 rainbow.rb 這個檔案中,檔案才會一起打包
然後在 Rainbow 設定 Rack (就不用每次做應用程式都要設定 Rack 了)
1 | # rainbow/lib/rainbow.rb |
step7 刪除 rainbow-0.0.1.gem
因為我們有做一些設定變更
如果不刪除、重新安裝就無法讀取最新的設定
所以記得刪除 + 重新安裝
step8 重新安裝套件
1 | > gem build rainbow.gemspec |
step 9 設定 quotations 框架為 Rainbow
現在我們要來使用 Rainbow::Application 做設定
首先來到 config 檔案中並建立 application.rb
1 | quotations/config |
1 | require "rainbow" |
設定完,我們再來 Gemfile 中設定
要記得加上 path,才知道要從哪裡抓 rainbow 套件
1 | # quotations/Gemfile |
設定完就可以存檔進行下一步
step 10 重新設定 quotation config
在 quotation 的 config.ru 中重新設定,把 Rack 拿掉
引入剛剛 config/application.rb 檔中的設定
1 | require './config/application' |
最後在 quotation 啟動 rackup -p 3001
看到Hello from Ruby on Rulers!就是成功囉!
參考文獻
https://rebuilding-rails.com/
https://guides.rubyonrails.org/index.html