【问题标题】:sails waterline autoincrement帆水线自动增量
【发布时间】:2015-04-28 18:09:35
【问题描述】:

很好奇为什么会发生这种行为......

当我扬帆进行测试时,我在磁盘上设置了一个 testdb。一切都被丢弃以从头开始测试。

Sails.lift({
  connections: {
    testdb: {
      adapter: 'sails-disk'
    },
  },
  models: {
    connection: 'testdb',
    migrate: 'drop'
 }
}, function(err, server) ...

当我在测试前执行 Model.find() 时,可以预见一切都是空的。但是当我执行 Model.create() 时,它会返回从所有旧模型中按顺序递增的“id”字段。

切换到“sails-memory”适配器每次都会重新开始,这是有道理的,因为它在物理上无法持久化任何东西。

那么,作为一个学习点,这里发生了什么,为什么?

【问题讨论】:

  • 看起来您在sails-disk 中发现了一个错误,drop 函数会清除数据和架构,但不会清除计数器。您可以在sails-disk github repo 中将其作为问题打开。

标签: node.js sails.js waterline


【解决方案1】:

您已将模型迁移设置为drop。根据sails migrate doc,您需要将其设置为savealter

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-11
    • 1970-01-01
    • 2017-08-30
    相关资源
    最近更新 更多