无法使用mysql创建数据源

时间:2019-07-29 22:03:26

标签: mysql loopback

我正在使用mysql创建回送应用程序。我确定数据源将是mysql,但是当我运行应用程序时,在控制台窗口中出现了以下错误。

参考错误:无法创建数据源“商店”:无法初始化连接器“ mysql”:时间未定义

这是我的datasource.json代码。

{
  "db": {
    "name": "db",
    "connector": "memory"
  },
  "shop": {
    "host": "localhost",
    "port": 8081,
    "url": "",
    "database": "shoppingdatabase",
    "password": "",
    "name": "shop",
    "user": "root",
    "connector": "mysql",
    "connectTimeout":9000000
  }
}

这是model.json的代码

{
  "_meta": {
    "sources": [
      "loopback/common/models",
      "loopback/server/models",
      "../common/models",
      "./models"
    ],
    "mixins": [
      "loopback/common/mixins",
      "loopback/server/mixins",
      "../common/mixins",
      "./mixins"
    ]
  },
  "User": {
    "dataSource": "db"
  },
  "AccessToken": {
    "dataSource": "db",
    "public": false
  },
  "ACL": {
    "dataSource": "db",
    "public": false
  },
  "RoleMapping": {
    "dataSource": "db",
    "public": false,
    "options": {
      "strictObjectIDCoercion": true
    }
  },
  "Role": {
    "dataSource": "db",
    "public": false
  },
  "carts": {
    "dataSource": "shop",
    "public": true
  },
  "products": {
    "dataSource": "shop",
    "public": true
  },
  "users": {
    "dataSource": "shop",
    "public": true
  },
  "vendors": {
    "dataSource": "shop",
    "public": true
  }
}

这是我运行服务器时的屏幕截图。 enter image description here

1 个答案:

答案 0 :(得分:0)

将您的datasource.json更改为:

    {
      "db": {
      "host": "localhost",
      "port": 3306,
      "url": "",
      "database": "shoppingdatabase",
      "password": "",
      "name": "db",
      "user": "root",
      "connector": "mysql",
      "connectTimeout":9000000
     }
   }

和model.json为

    {
     "_meta": {
     "sources": [
       "loopback/common/models",
       "loopback/server/models",
       "../common/models",
       "./models"
      ],
     "mixins": [
       "loopback/common/mixins",
       "loopback/server/mixins",
       "../common/mixins",
       "./mixins"
      ]
    },
    "User": {
     "dataSource": "db"
    },
    "AccessToken": {
     "dataSource": "db",
     "public": false
    },
    "ACL": {
     "dataSource": "db",
     "public": false
    },
    "RoleMapping": {
     "dataSource": "db",
     "public": false,
     "options": {
       "strictObjectIDCoercion": true
      }
    },
    "Role": {
     "dataSource": "db",
     "public": false
    },
    "carts": {
     "dataSource": "db",
     "public": true
    },
    "products": {
     "dataSource": "db",
     "public": true
    },
    "users": {
     "dataSource": "db",
     "public": true
    },
    "vendors": {
     "dataSource": "db",
     "public": true
    }
  }

,然后在MySQL中手动创建一个名为“ shoppingdatabase”的数据库,因为回送将需要预先创建该数据库。 并保持密码保护。