loopback automigrate vs autoupdate

时间:2015-09-25 12:26:33

标签: javascript node.js loopbackjs

当我们有模型并希望将其迁移到数据库时,我们只需在server / boot中创建脚本:

server.dataSource['myDbSource'].automigrate('MyMode', function(err){...})

server.dataSource['myDbSource'].autoupdate('MyMode', function(err){...})

每个服务器上的第一个重新启动,在db中重新创建模式并清除数据,第二个可以创建模式或更改它(如果存在),但不是清除数据。当我们使用automigrate创建模式时,我们应该删除它(或者每次我们的数据都会丢失),但是当我们使用autoupdate时它可以保留在代码中(我们可以修改模型和模式将被更新)。

看起来autoupdate更有用。当我们必须使用automigrate时呢? autoupdate有缺点支持自动迁移吗?

我喜欢仅使用自动启动的工作流程,但只有在我决定时才设置env标志来更新架构。你怎么看?

1 个答案:

答案 0 :(得分:7)

它们都有其特定用途。如果您不关心数据,则自动迁移(即删除表并重新创建)。如果您不想意外删除现有数据,请自动更新。见auto-migrate documentation