相信很多人主要是希望可以透過 devise 來幫忙串接第三方登入,這部分剛好在我們製作專案的時候有順利完成 google 的部分就拿出來分享給大家。 主要步驟...
上一章已經幫兩位 owner 成功開店了;接下來,我們幫他們進駐一些商品 (product),一間店不可能只有一件商品,所以我們這邊要用到一對多關聯。 一對多...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 的 API-only 模式,今天來看 RailsGuide 的 Multiple Da...
基本會員註冊登入沒問題後,剛開始大家可能會想先處理的,就是註冊的一些欄位新增與資料要寫入資料庫會碰到問題,以及個別通知訊息及標籤的 i18n 中文化等等,所以本...
在一個 Rails 專案中,你一定會有很多的 Model,這些 Model 之間也許會有一些關聯性,那為什麼 Model 之間要有關聯呢?這些關聯使我們程式碼寫...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 的Caching 機制,今天來看 RailsGuide 的 API-only mode...
前幾章有介紹過如何透過 Model 建立你要的資料表以及要的欄位,也有提到 Migration 檔,也提到你需要將資料表具現化,也就是在終端機 rails db...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 的 Rack,今天來看 RailsGuide 的 Caching 篇,看 Rails...
想當初學習自製登入系統真的有點辛苦呢,但 rails 中其實有厲害套件 Devise 可以幫你完成喔,但要能客製化出自己想要的東西也不是很容易的事情呢! 就先來...
Rails 除了強大的框架本身帶來的功能之外,還有許多讓人事半功倍,創造強大火力的開源套件可以使用,也就是我們所說的 Gem 了。 Gem 是甚麼? 就是 Ru...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 有哪些可以客製化的設定,今天來看看 RailsGuide 的 Rack 篇,了解一下...
前幾章有提到 controller 會跟 model 拿資料,新手階段的我常常會把它跟資料庫 (Database) 搞混。所以要特別注意以下的觀念: Mode...
多對多 N:N 關於多對多繼續用飲料店的例子舉例說明,可以想像我們很多間飲料店品牌,有很多飲料品項是相同的或不同,就會有需要有一張第三方表單來記錄: 一間飲料...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 的 Command Line 有哪些特殊指令,今天來看看 Rails 的各種設定,像是...
1:N 一對多 如果我們希望每間商店可以販售許多種飲料,可以使用一對多模式來進行關連。 先建立 Drink 這個 Model:rails g model Dri...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 內建的測試框架 - Minitest,今天來看一下大家熟悉的 $ rails new...
想好好學會rails,不得不好好認識相當重要的關聯性,能夠理解並善用的話,你就能在各個model之間進行資料庫的溝通,拿到你想要的資料。 Model 關聯性 R...
前幾章我們已經認識Route 了,當你去跟 Route 說你要去哪時,它會指引你該去哪裡,這邊先幫大家複習一下這一張圖:它會叫你先去找你要的 Controlle...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,昨天跟大家一起看了 Rails 的 i18n 怎麼做,今天來看官方推薦的 Rails 測試方法怎麼說,夠夠~ Rai...
Flyweight(蠅量模式) 如果一個類別實例可以用來提供許多虛擬實例,那就使用蠅量模式。 簡言之:多個物件共享同份狀態 情境: 五子棋遊戲 每個棋子都有標示...
Migration 是什麼 就是一個紀錄「資料庫的架構」的檔案,我們可以知道目前資料庫的欄位有什麼?、型態是什麼?,也可以知道目前修改的紀錄與過程。可以跟著 g...
上一章介紹了 routes 的工作環境,以及淺談了 RESTful 。今天要來介紹好用的方法,讓你不用寫一堆網路請求的路徑。 資源 Resource 上一章有提...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,前幾天跟大家一起做了很多 Rails 前端的實驗,今天回歸一下 RailsGuide 還沒看的內容,今天要看的是 Ra...
門面模式(Facade) 目的: 替子系統裡的一堆介面定義一套統一的高階介面,讓子系統更易使用。 結構: 左邊是沒有使用門面模式(Facade)的狀況下,...
接著上一篇我們繼續說明用 ORM 來操作 CRUD 的部分 關於讀取的部分還可以怎麼去找到,還有後面的 update 及 delete 的說明。 更精準的讀取...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,前幾天跟大家一起實驗了用 importmap、webpack、esbuild 來安裝 bootstrap,還有用 es...
Model 前面的章節有提到過 Model 其實就是一個幫忙與資料庫溝通的地方,他既不是資料庫(Database)也不是資料表(Table),Model 可以當...
開場白 鼬~~哩賀,我是寫程式的山姆老弟,前幾天跟大家一起實驗了用 importmap、webpack、esbuild 來安裝 bootstrap,今天來繼續延...
裝飾器(Decorator) 目的: 將額外權責動態附加於物件身上,不必衍生子類別即可彈性增廣功能 結構: 程式碼範例: class Component...
組合模式(Composite) 目的: 將物件組織成樹狀結構、『部分-全體』層級關係,讓外界以一致性的方式對待個別物件和整體物件。 結構: 程式碼範例:...