2017-09-22 7 views
2
私はちょうどそれは、開発時間なのでSequelizeとSequelize CLI

がどのようにSequelize CLI

を使用し始めました

に新しい列を追加、削除するために、列の頻繁な追加と削除があります。既存のモデルに新しい列を追加するにはどのような方法が最適ですか?

たとえば、私は新しい列 '完了'からTodoモデルにしたいと思います。この列をmodels/todo.jsに追加します。次のステップは何ですか?

私が働いていないsequelize db:migrate

を試してみました:「いいえ移行は、実行されていないデータベーススキーマが最新ですでにでした。」

答えて

7

sequelize-cliを使用している場合は、まずマイグレーションを作成する必要があります。これは、データベースを更新する方法と、何か問題が発生した場合の変更をロールバックする方法をエンジンに伝えるファイルです。あなたは、常にこのようになり、リポジトリ

$ sequelize migration:create 

移行ファイルにこのファイルをコミットする必要があります。

module.exports = { 
    up: function(queryInterface, Sequelize) { 
    // logic for transforming into the new state 
    queryInterface.addColumn(
     'Todo', 
     'completed', 
    Sequelize.BOOLEAN 
    ); 

    }, 

    down: function(queryInterface, Sequelize) { 
    // logic for reverting the changes 
    queryInterface.removeColumn(
     'Todo', 
     'completed' 
    ); 
    } 
} 

をそして、それを実行します。このため任意のドキュメントは

$ sequelize db:migrate 
+0

ありますか? –

+1

はい。 http://sequelize.readthedocs.io/en/latest/docs/migrations/ –

+0

ありがとうございます。複数の列を追加する場合はどうすればよいですか? –

関連する問題