sql-server - 如何让自动迁移与 SQL Server 一起工作
问题描述
我无法让自动迁移和自动更新工作。
我创建了我的项目、数据源和模型。一切看起来都不错,但我无法自动迁移工作。如果我去我的 SQL Server 并创建表/模式,那么所有的 GET/POST 方法都可以正常工作。
我去了服务器/引导目录。目前有两个文件在那里身份验证和根目录。
我创建了一个名为 automigrate.js 的新文件
'use strict';
module.exports = function (app) {
app.dataSources.mysql.automigrate();
console.log("Performed automigration.");
}
当我运行它时,我得到一个错误:
C:\Users\ajmal\loopback\telematics\server\server.js:31 if (err) throw err; ^
TypeError:无法读取未定义的属性“自动迁移”
在 Object.module.exports [as func] (C:\Users\ajmal\loopback\telematics\server\boot\automigrate.js:9:26)
在 C:\Users\ajmal\loopback\telematics\node_modules\loopback-引导\lib\executor.js:316:22
解决方案
您可以使用grunt-loopback-auto模块或按照https://loopback.io/doc/en/lb3/Creating-a-database-schema-from-models.html#auto-update上的文档构建自己的模块
笔记:
automigrate
将删除并重新创建表。因此,数据将丢失。生产环境很糟糕。autoupdate
计算 LoopBack 模型和数据库表定义之间的差异并相应地更改表。
因此,我们应该autoupdate
在几乎所有情况下使用。
推荐阅读
- flexbox - flexbox在chrome和firefox中渲染不同
- scala - 如何将 int 类型参数修改为 T 类型?
- ruby-on-rails - 在 Spree 注册表单中添加图像
- ios - Swift:从另一个类更改 uilabel 文本
- javascript - 无法理解此脚本从哪里进行 ajax 调用(没有 $.ajax)
- java - 如何有效地找出需要添加到 Java 密钥库的证书?
- java - 相对布局不能转换为 RecyclerView
- spring - 尽管具有管理员角色,但访问被拒绝
- netsuite - 带有suitescript的netsuite中的级联/依赖子列表下拉列表
- node.js - 使用 nodeJS 和 Angular 6 应用程序开发时如何设置高效构建