Rumah >hujung hadapan web >tutorial js >Sekuelkan pembenih untuk data statik

Sekuelkan pembenih untuk data statik

Linda Hamilton
Linda Hamiltonasal
2024-12-29 03:10:10154semak imbas

Catatan yang sangat ringkas tentang cara melakukan seeders dalam sekuel. Seeder ialah cara anda mencipta data statik dalam pangkalan data yang anda mahu hadir tanpa pengguna perlu menciptanya.

Matlamat ini adalah untuk menambahkan beberapa data statik pada jadual jenis tugas saya yang sangat asas dalam apl todo saya yang ditakrifkan oleh model ini:

module.exports = (sequelize, Sequelize) => {
    const static_task_type = sequelize.define("static_task_type", {
      id: {
        type: Sequelize.INTEGER,
        primaryKey: true,
        autoIncrement: true
      },
      task_type: {
        type: Sequelize.STRING,
        allowNull: false
      }
    });
    static_task_type.associate = function (models) {

    };

    return static_task_type;
  };

Untuk mencipta templat seeder:

npx sequelize-cli seed:generate --name add-static-task-types

Ini sedang mengisi templat seeder dengan beberapa jenis tugasan.

'use strict';

/** @type {import('sequelize-cli').Migration} */
module.exports = {
  async up (queryInterface, Sequelize) {


  await queryInterface.bulkInsert('static_task_types',[
      { id: 1, task_type: 'Deep' ,createdAt: new Date(),updatedAt: new Date()},
      { id: 2, task_type: 'Shallow' ,createdAt: new Date(),updatedAt: new Date()},
      { id: 3, task_type: 'Phone Call' ,createdAt: new Date(),updatedAt: new Date() },
      { id: 4, task_type: 'Errands' ,createdAt: new Date(),updatedAt: new Date()}]

      ) 
  },



  async down (queryInterface, Sequelize) {
    await queryInterface.bulkDelete('static_task_types', null, {
      truncate: true,
      cascade: true, // Optional: Will also delete dependent rows if foreign keys are used
      restartIdentity: true, // Optional: Resets auto-increment counters
    });
  }
};

NOTA: jangan lupa tambah lajur createAt dan updatedAt, jika tidak, anda akan mendapat ralat berikut:

ERROR: null value in column "createdAt" of relation "static_urgencies" violates not-null constraint
ERROR DETAIL: Failing row contains (1, Now, null, null).

Untuk menjalankan benih:

npx sequelize-cli db:seed:all

Kejayaan seperti yang ditunjukkan dalam tetingkap DBeaver:

Sequelize seeders for static data

Atas ialah kandungan terperinci Sekuelkan pembenih untuk data statik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:#FreeJavaScriptArtikel seterusnya:#FreeJavaScript