我试图让knex在我的node.js应用程序中工作.我正在关注一个教程,并在某个时候创建了一个表但无法重复该过程.我删除了表并删除了所有迁移文件夹.在这一点上,我重新开始,但在创建新的迁移然后运行knex migrate:latest后,我收到一条错误消息,说迁移目录已损坏,因为我原来的迁移丢失了.
我的印象是,如果文件遗失,它应该不知道它曾经存在过.
knexfile.js
development: {
client: 'pg',connection: {
host: '127.0.0.1',user: 'postgres',password: 'password',database: 'myDatabase'
},pool: {
min: 10,max: 20
},migrations: {
directory: __dirname + '/db/migrations'
},seeds: {
directory: __dirname + '/db/seeds/development'
}
db.js
var config = require('../knexfile.js');
var env = 'development';
var knex = require('knex')(config[env]);
module.exports = knex;
console.log('Getting knex');
knex.migrate.latest([config]);
console.log('Applying migration...');
运行此错误,
knex migrate:latest
Using environment: development
Error: The migration directory is corrupt,the following files are missing: 20161110130954_auth_level.js
但是这个迁移不存在,因为我删除了它.
最佳答案