sequelizeの使い方
1502 ワード
昨日アップロードした
クライアントがサーバに要求すると、要求はルータから消去され、コントローラに転送されます.また、コントローラはモデルにやるべきことを伝え、モデルはdbの情報を修正またはインポートします.その後、コントローラに渡し、viewに表示してクライアントに接触します.
以前はurlのみを受信して処理していましたが、後でこのmvcモードが便利になるので使うべきです.
今日は昨日のmvcモードを除いて、関係を追加する方法を学びました.
まず、外部キーの追加方法を指定するにはmodelassociateに追加するか、テーブルにフィールドを作成して移行に追加する方法
クライアントがサーバに要求すると、要求はルータから消去され、コントローラに転送されます.また、コントローラはモデルにやるべきことを伝え、モデルはdbの情報を修正またはインポートします.その後、コントローラに渡し、viewに表示してクライアントに接触します.
以前はurlのみを受信して処理していましたが、後でこのmvcモードが便利になるので使うべきです.
今日は昨日のmvcモードを除いて、関係を追加する方法を学びました.
まず、外部キーの追加方法を指定するにはmodelassociateに追加するか、テーブルにフィールドを作成して移行に追加する方法
User.associate = function(models) {
// associations can be defined here
User.hasMany(models.Task, {
foreignKey: 'userId',
as: 'tasks'
});
};
このように追加します.'use strict';
module.exports = {
up: async (queryInterface, Sequelize) => {
// field 추가
await queryInterface.addColumn('urls', 'userId', Sequelize.INTEGER);
// foreign key 연결
await queryInterface.addConstraint('urls', {
fields: ['userId'],
type: 'foreign key',
name: 'FK_any_name_you_want',
references: {
table: 'users',
field: 'id'
},
onDelete: 'cascade',
onUpdate: 'cascade'
});
},
down: async (queryInterface, Sequelize) => {
await queryInterface.removeConstraint('urls', 'FK_any_name_you_want');
await queryInterface.removeColumn('urls', 'userId');
}
};
このように追加または作成すればよいしかし、テストに合格するには2つ目の方法が必要なので、こちらをたくさん使います.Reference
この問題について(sequelizeの使い方), 我々は、より多くの情報をここで見つけました https://velog.io/@hyeon3051/sequelize-사용법テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol