# Ruby(14/14) 五倍紅寶石(第八屆共筆)(2021/8/27) 測試上傳github,記得切分支 ## 五倍最後一天正課,行齁? 不行也得行啦 ### 前端框架 前後端分離用 Vue 很好做 但一站式會比較麻煩 Rails 變 Model,Vue 是 View Stimulus.js 好處是很清楚 JS 檔要放哪裡 ## JS ### ... [展開運算子](https://developer.mozilla.org/zh-TW/docs/Web/JavaScript/Reference/Operators/Spread_syntax) 1. 用在參數,用來接收全部引數 2. 用在 console.log ,把陣列或物件整個展開印出來 ### ||= a ||= 1 => a = a || 1 => a 有值就給他 a 的值,否則就是 1 => 也就是給他一個預設值 1 ### Rails 推薦書: [Agile Web Development with Rails 6](https://www.tenlong.com.tw/products/9781680506709) dhh寫的 - 使用者瀏覽資料存在 session、database 差異 - 存在 database 可以做資料分析6 - 存在 session 無法做資料分析 ## 實作購物車、訂單、金流 ### Braintree [Braintree](https://www.braintreepayments.com/) 用來做串接金流,記得用 sandbox 註冊登入就好 developer doc:寫給工程師看的文件 Nonce:Number once,用一次的數字 3 做二階段驗證 5 是安全的 ![](https://i.imgur.com/O4P5twn.png) 有專門的測試用卡號在官網 4111-1111-1111-1111 日期隨便寫,只要是沒過期都可 ### routes resources:路徑會生出id resource:路徑不會生出id,適合購物車,每個人只會有一台購物車 ### 測試 寫測試就是用來當規格、說明書,將來就這樣用 ### debug JS:有事沒事就來個 console.log 印看看結果 Ruby:render html: params 看 params 長怎樣 或是把變數丟到 view 看一下長怎樣 ### 金鑰 - figaro套件 把金鑰放進來變環境變數 因為設定會放在 gitignore 所以 yml 檔案不會被推上去 同理,有些東西如:bundle、yarn、某些 json 檔...之類的 rails 預設放在這個資料夾 所以才不會推上去 GitHub,導致每次 pull 下來都會少東西,要 bundle install 跟 yarn install 看到.sample可以照著做,然後把.sample刪掉 用國外金流要注意幣別,推薦藍新或綠界金流 ### code review 龍哥會問這誰寫的,為什麼這麼寫? 寫的時候要知道自己在寫甚麼 --- ###### tags: `Ruby` `Rails` `JavaScript`