在 Sails 和 Waterline 中,数据库适配器(通常简称为“适配器”)允许 Sails 应用程序中的模型与您的数据库进行通信。换句话说,当您在控制器操作或帮助器中的代码调用模型方法(例如 User.find()
)时,接下来发生的事情由 配置的适配器 决定。
适配器被定义为一个字典(也就是 JavaScript 对象,比如 {}
),其中包含 find
、create
等方法。根据它实现的方法以及实现的完整性,适配器被认为实现了一个或多个**接口层**。每个接口层都意味着一个实现某些功能的契约。这使得 Sails 和 Waterline 能够保证跨多个模型、开发人员、应用程序甚至公司的一致使用模式,从而使应用程序代码更易于维护、更高效且更可靠。
在早期版本的 Sails 中,适配器有时用于其他目的,例如与某些类型的 RESTful Web API、内部/专有 Web 服务甚至硬件进行通信。但是,真正的 RESTful API 非常罕见,因此,在大多数情况下,编写一个数据库适配器来与非数据库 API集成可能会受到限制。幸运的是,现在有一种 更直接的方法 来构建这些类型的集成。
适配器主要专注于提供模型上下文的 CRUD 方法。CRUD 代表创建、读取、更新和删除。在 Sails/Waterline 中,我们将这些方法称为 create()
、find()
、update()
和 destroy()
。
例如,一个 MySQLAdapter
实现了一个 create()
方法,该方法在内部使用指定的表名和连接信息调用 MySQL 数据库并运行 INSERT ...
SQL 查询。
阅读有关 可用适配器 或如何创建自己的 自定义适配器 的信息。