2016-04-08 17 views
1

私は、アプリケーション使用ノード+エクスプレス+ポストグラム+ knexjs ORMを構築しています。私は、マイグレーションを実行しようとしています:knexjs postgresqlのマイグレーションが正しく実行されていない

knex migrate:latest

をしかし、私のコンソールが戻って保持します:

Using environment: development

Already up to date

そして、これが私のテーブルに作成されていない結果を...ここですマイマイグレーションファイル:

exports.up = function(knex, Promise) { 

    return Promise.all([ 

      knex.schema.createTable('address', function(table) { 

       table.increments(); 
       table.string('address_id'); 
       table.string('addr_1'); 
       table.string('addr_2'); 
       table.string('city'); 
       table.string('state'); 
       table.string('zip'); 

     ]); 
}; 


exports.down = function(knex, Promise) { 

    return Promise.all([ 

      knex.schema.dropTable(host_domain + '.address'), 

     ]); 

}; 

誰かが何が起こっているのか知っていますか?

注 - knex migrate:latestを実行した時点でテーブルが作成されていません。

ありがとうございます!

+0

'knex_migrations'テーブルの内容は何ですか?これは、Knexがどのマイグレーションを適用したかを追跡する場所です。移行ファイルは既にそこにありますか? – Gangstead

+0

移行テーブルはありません。テーブルは一切ありません –

+0

マイグレーションのようなサウンドは設定されていません。あなたはあなたのknexfileを投稿できますか? – Gangstead

答えて

1

Knexは、デフォルトでenvironment = developmentでの移行を実装しています。 あなたの環境では、knexの移行を実行する必要があります。コンソールで

module.exports = { 
    myenv: { // it is name of environment 
     client: 'pg', 
     connection: { 
      user: 'me', 
      database: 'my_app' 
     } 
    } 
}; 

コマンド:例:

、あなたは次のknexfile.jsを持って

knex migrate:latest --env myenv 
関連する問題