【发布时间】:2014-01-19 20:36:21
【问题描述】:
首先,我使用的是 node.js 与 sequelize ORM 和 Postgres SQL。
我有两个简单的问题:
每次我重新运行节点应用程序时,sequelize 都会删除并创建数据库中的所有表。如何防止它这样做(我不希望我在数据库中的记录被删除)?我尝试将我的 NODE_ENV 设置为测试,但没有帮助。
sequelize 迁移如何知道它停止的位置(哪些迁移已执行,哪些未执行)。 例如,当我在 Grails 框架中使用数据库迁移时,它会自动在数据库中创建一个表,其中保存了之前执行的所有迁移时间戳,当我重新运行我的应用程序时,它会查看该表并知道哪些迁移已经完成以及哪些不是。 使用节点/续集时我没有看到任何表,那么它是如何工作的? :)
谢谢, 伊万
【问题讨论】:
-
你能包含一些代码吗?我正在使用带有 postgresql 的 sequelize 并且没有遇到这个问题。
-
我在 sequelize.js 网页上复制了他们表达的示例,并且只放置了 postgre 数据库而不是 mysql(就像他们在示例中所做的那样)github.com/sequelize/sequelize-expressjs-example(他们的示例链接)
-
我想通了。他们将 sync: { force: true } 放在 app.js 的某些代码部分中,并覆盖了我在连接到数据库时定义的同步 (false) ......现在第二个问题困扰着我:)
标签: node.js postgresql sequelize.js