gpt4 book ai didi

node.js - Sequelize + Sequelize cli 播种大量随机数据

转载 作者:太空宇宙 更新时间:2023-11-03 22:50:26 26 4
gpt4 key购买 nike

在 node/sequelize cli 中为两个单独的表和一个联接表插入数据的最佳方法是什么,或者任何真正的方法

即我有一个地址表,我在其中添加

const faker = require('faker');
const models = require('./server/db/sequelize/models');
const States = models.States;
const Addresses = models.Addresses;

module.exports = {
up: (queryInterface) => {

return Promise.all([
for (let i = 0; i < 1000; i++) {
Addresses.create({
streetName: faker.address.streetAddress(),
streetNameAlt: faker.address.streetAddress(),
zipCode: faker.address.zipCode(),
town: faker.address.county(),
city: faker.address.city(),
stateId: id,
addressTypeId: 1,
createdAt: faker.date.recent(),
updatedAt: faker.date.recent(),
});
}
},

down: (queryInterface) => {
return queryInterface.bulkDelete('Addresses', null, {});
}
};

但是,当我生成用户时,我想从地址表中选择一个随机地址作为 addressId 并创建该用户的联合记录

const faker = require('faker');

const usersList = [];

for (let i = 0; i < 1000; i++) {
const userObj = {
email: faker.internet.email(),
password: faker.internet.password(),
name: faker.name.findName(),
gender: 'Male',
description: '',
location: faker.address.streetAddress(),
website: faker.internet.url(),
};
usersList.push(userObj);
}

单独的代码

UserAddress.create({
userId: userId,
addressId: addressId
});

最佳答案

//Another way to do this, easy and fast with random data

'use strict';

var faker = require("faker");

module.exports = {

up: (queryInterface, Sequelize) => {

var newData = [];

for (let i = 0; i < 10; i++) {
const seedData = {
country_name: faker.address.country(),
country_code: faker.address.countryCode(),
createdAt: new Date(),
updatedAt: new Date()
};
newData.push(seedData);
}

return queryInterface.bulkInsert('Countries', newData);
},

down: (queryInterface, Sequelize) => {
return queryInterface.bulkDelete('Countries', null, {});
}
};

关于node.js - Sequelize + Sequelize cli 播种大量随机数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48219958/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com