Node.js 使bookshelf.js与现有数据一起工作

Node.js 使bookshelf.js与现有数据一起工作,node.js,postgresql,bookshelf.js,knex.js,Node.js,Postgresql,Bookshelf.js,Knex.js,我的团队刚刚开始在knex的节点应用程序中使用bookshelf.js。默认情况下,ORM对象使用在postgresql中创建为“串行”类型的id字段。我们有需要插入数据库的现有数据。我的理解是,数据库“id”字段将希望以1开头 那么,有没有办法让postgres序列号从特定的数字开始(使用集群数据库和序列数据类型也会有问题) 有没有办法通过knex/bookshelf将字段设置为“整数”字段类型,并使用序列发送到nextval 还有其他选择吗(这里也不寻找极端黑客) 我们正在使用以下堆栈:

我的团队刚刚开始在knex的节点应用程序中使用bookshelf.js。默认情况下,ORM对象使用在postgresql中创建为“串行”类型的id字段。我们有需要插入数据库的现有数据。我的理解是,数据库“id”字段将希望以1开头

  • 那么,有没有办法让postgres序列号从特定的数字开始(使用集群数据库和序列数据类型也会有问题)
  • 有没有办法通过knex/bookshelf将字段设置为“整数”字段类型,并使用序列发送到nextval
  • 还有其他选择吗(这里也不寻找极端黑客)
我们正在使用以下堆栈:

  • 博士后:9.x
  • 节点JS:4.4.4 LTS
  • Knex:0.11.8
  • 书架:0.10.0

谢谢

你好,Nick,我在knex方面的经验很丰富,但是如果文档是正确的,您对热表本身的行为有很好的自由度:例如,您可以创建一个模型来解决关联,但可以使用knex schema builder来管理/迁移数据库:此外,如果其他一切都失败,您可以使用knex.raw访问postgres,并按照您需要的方式制作序列:嗨,Nick,我的经验是我与knex的合作,但是,如果文档是正确的,那么您对热表本身的行为有很大的自由度:例如,您可以创建一个模型来解决关联,但可以使用knex schema builder来管理/迁移数据库:此外,如果其他一切都失败,您可以使用knex.raw访问postgres,并按照您需要的方式制作序列: