数据存储代表为您的应用程序配置的数据源。数据存储通常代表一个特定的数据库,无论是运行在本地安装的 MySQL 服务器上的数据库,还是运行在您公司数据中心的远程 PostgreSQL 数据库,或由云提供商托管的远程 MongoDB 数据库。
数据存储在 sails.config.datastores
中配置。
Sails 应用程序从一个隐式数据存储开始,默认情况下,所有模型都使用它。对于许多应用程序来说,这已经足够了,但是如果您正在构建一个需要使用多个数据库的应用程序,您可能还会发现配置额外的命名数据存储(如 legacyProductDb
)很有用。
Sails 应用程序中的每个 模型 都与一个特定的数据存储连接,因此每次您调用内置的模型方法时,模型都会隐式地与其配置的数据存储进行通信。
即便如此,有时能够在任何特定模型的上下文中与数据存储进行通信也是很有用的。因此,当您的应用程序启动时,Sails 会自动为每个配置的数据存储实例化称为注册数据存储实例的对象。要在运行时访问其中一个实例,请调用 sails.getDatastore()
或 .getDatastore()
模型方法。
注册的数据存储会公开它们自己的某些方法和属性,例如 .leaseConnection()
和 .manager
,它们提供了一种直接与底层数据库对话的简便方法。(本节文档中的其余页面致力于详细介绍这些数据存储方法和属性。)