在 Sails 和 Waterline 中,資料庫配接器(通常簡稱為「配接器」)讓您的 Sails 應用程式中的模型能夠與您的資料庫進行通訊。換句話說,當您在控制器動作或助手函數中呼叫模型方法(例如 User.find()
)時,接下來會發生什麼事取決於已設定的配接器。
配接器被定義為一個字典(也稱為 JavaScript 物件,例如 {}
),其中包含諸如 find
、create
等方法。根據配接器實作的方法及其完整性,配接器被認為實作了一或多個介面層。每個介面層都暗示著實作特定功能的契約。這使得 Sails 和 Waterline 能夠確保跨多個模型、開發人員、應用程式甚至公司的傳統使用模式,從而使應用程式碼更具可維護性、效率和可靠性。
在舊版本的 Sails 中,配接器有時會用於其他目的,例如與某些種類的 RESTful 網路 API、內部/專有網路服務,甚至硬體進行通訊。但是,真正 RESTful 的 API 非常罕見,因此,在大多數情況下,編寫資料庫配接器以與非資料庫 API 整合可能會受到限制。幸運的是,現在有更直接的方法來建構這些類型的整合。
配接器主要專注於提供模型關聯的 CRUD 方法。CRUD 代表建立 (create)、讀取 (read)、更新 (update) 和刪除 (delete)。在 Sails/Waterline 中,我們將這些方法稱為 create()
、find()
、update()
和 destroy()
。
例如,MySQLAdapter
實作了一個 create()
方法,該方法在內部使用指定的表格名稱和連線資訊呼叫 MySQL 資料庫,並執行 INSERT ...
SQL 查詢。