Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Knex-已更新_Node.js_Database_Postgresql_Migration_Knex.js - Fatal编程技术网

Node.js Knex-已更新

Node.js Knex-已更新,node.js,database,postgresql,migration,knex.js,Node.js,Database,Postgresql,Migration,Knex.js,我正在努力解决与knex生产环境(heroku)中的迁移相关的问题。我做了一些更改并创建了8个新迁移来更新模型。创建新的迁移后,我已经有47个迁移文件。将更改上传到Heroku后,我像往常一样执行knex migrate:latest,但没有效果。我已收到最新的信息 我决定看看knex_migrations表,看看是否有问题。结果是,我可以看到新的迁移没有写入该数据库(请参见图片以供参考) 当我们查看迁移时,它看起来是这样的: 很明显,我们可以看到knex能够运行“2020021619040

我正在努力解决与knex生产环境(heroku)中的迁移相关的问题。我做了一些更改并创建了8个新迁移来更新模型。创建新的迁移后,我已经有47个迁移文件。将更改上传到Heroku后,我像往常一样执行
knex migrate:latest
,但没有效果。我已收到最新的信息

我决定看看
knex_migrations
表,看看是否有问题。结果是,我可以看到新的迁移没有写入该数据库(请参见图片以供参考)

当我们查看迁移时,它看起来是这样的:

很明显,我们可以看到knex能够运行“2020021619040_receiver_company.js”作为最后一个

当我查看
knex\u migrations\u lock
表时,唯一存在的条目如下所示:

有人知道如何强制knex运行迁移吗?我使用的knex版本
0.16.3

编辑:


我想补充一点,在本地计算机上运行迁移没有问题。此外,我已经检查了服务器上是否存在迁移文件,并且在提取Heroku的当前状态后,我可以看到所有未执行的迁移文件。

如果da中未执行迁移更改tabase,您可以尝试手动从
knex_migrations
或您的migrations表中删除迁移记录, 并尝试重新应用
knex migrate:latest
命令

但在您尝试这种方法之前,请确保保留一个备份,或者首先在您的本地计算机或开发服务器上运行它