【发布时间】:2020-06-09 20:20:27
【问题描述】:
我是 Loopback 框架的新手。
我已经完成了入门和模型创建,并尝试创建测试应用程序。
我通过命令创建了应用程序 -> lb
并通过 -> lb datasource 创建 mysql 数据源
并创建了两个模型 -> lb model
正在使用 mysql 数据源。
{
"name": "Brand",
"plural": "brands",
"base": "PersistedModel",
"idInjection": true,
"options": {
"validateUpsert": true
},
"properties": {
"name": {
"type": "string",
"required": true
}
},
"validations": [],
"relations": {},
"acls": [],
"methods": {}
}
所以现在当我通过npm start 启动应用程序并转到localhost:3000/explorer 并尝试使用任何端点时,我得到下表未找到错误。
Unhandled error for request GET /api/brands: Error: ER_NO_SUCH_TABLE: Table 'loop3.Brand' doesn't exist
Loopback 会自动在数据库中创建表吗?或者我将不得不为每个模型创建autoMigrate 文件或者应该如何完成请帮助..
答案:
感谢@Diana,我在boot 目录中创建了script.js 文件并添加了以下代码
'use strict';
module.exports = function(app) {
var db = app.datasources.mysqld;
db.autoupdate(function(err) {
if (err) throw err;
console.log('\nAutomigrate completed');
// other code here
});
};
如果任何属性发生变化,它会创建表并更新。
【问题讨论】:
标签: node.js loopbackjs