概要

/server/datasources.json中配置数据源Configure data sources in 。你可以在这个文件中设置多个数据源。

例如:

{
  "db": {
    "name": "db",
    "connector": "memory"
  },
  "myDB": {
    "name": "myDB",
    "connector": "mysql",
    "host": "demo.strongloop.com",
    "port": 3306,
    "database": "demo",
    "username": "demo",
    "password": "L00pBack"
  }
}

在应用代码里面通过使用app.datasources.datasourceName得到数据源。

标准属性

所有的数据源都支持下面的标准属性。有些特别的属性依赖于使用的connector。

属性描述
connector

要使用的connector:

  • memory
  • loopback-connector-oracle or just "oracle"
  • loopback-connector-mongodb or just "mongodb"
  • loopback-connector-mysql or just "mysql"
  • loopback-connector-postgresql or just "postgresql"
  • loopback-connector-soap or just "soap"
  • loopback-connector-mssql or just "mssql"
  • loopback-connector-rest or just "rest"

  • loopback-storage-service
name定义的数据源的名字

Properties for database connectors

PropertyTypeDescription
connectorString

Connector name; one of:

  • "memory"
  • "loopback-connector-mongodb" or "mongodb"
  • "loopback-connector-mysql" or "mysql"
  • "loopback-connector-oracle" or "oracle"
  • "loopback-connector-postgresql" or "postgresql"
  • "loopback-connector-rest" or "rest"
  • "loopback-connector-mssql" or "mssql"
databaseStringDatabase name
debugBooleanIf true, turn on verbose mode to debug database queries and lifecycle.
hostStringDatabase host name
passwordStringPassword to connect to database
portNumberDatabase TCP port
urlString

Combines and overrides hostportuserpassword, and database properties.

Only valid with MongoDB connector, PostgreSQL connector, and SQL Server connector.

usernameStringUsername to connect to database

特定环境的配置

你可以在洗面的文件中覆盖datasource.json中设置的值:

  • datasources.local.js 或 datasources.local.json
  • datasources.env.js 或 datasources.env.json, 这里的env 是NODE_ENV环境变量的值。 (一般是development 或 production);例如,datasources.production.json.
Icon

这些文件只能使用值类型(字符串,数字)来覆盖顶层的属性。目前还不支持聚合对象和数组。

Example data sources:

datasources.json
{
  // 键是数据源的名字
  // 值是传给app.dataSource(name, config)的config对象
  db: {
    connector: 'memory'
  }
} 
datasources.production.json
{
  db: {
    connector: 'mongodb',
    database: 'myapp',
    user: 'myapp',
    password: 'secret'
  }
}