Я пытаюсь заполнить Sequelize с огромным количеством данных, но при заполнении я получил ошибку "Ошибка проверки". Пожалуйста, смотрите мой код ниже.
"use strict";
const faker = require("faker");
const User = require("../models").User;
module.exports = {
up: async (queryInterface, Sequelize) => {
let products = [];
let amount = 100;
// 50 users
let users = await User.findAll();
let userCodes = users.map(user => user.code);
// output ['x312scAD', 'F32SDcvrW', ...]
function randomBetween(min, max) {
return Math.floor(Math.random() * (max - min + 1) + min);
}
// image collections from Unsplash.com
let imagesCollection = [1163637, 190727, 6780963, 1198107, 762960, 1353633, 3321491, 217461, 2203755];
let imageWidth = 980;
let imageHeight = 555;
var uniqueNumbers = [];
while (uniqueNumbers.length < amount) {
var r = Math.floor(Math.random() * 1000) + 1;
if (uniqueNumbers.indexOf(r) === -1) uniqueNumbers.push(r);
}
while (amount--) {
let randomCollection = randomBetween(0, imagesCollection.length - 1);
let randomThumbnail = `https://source.unsplash.com/collection/${imagesCollection[randomCollection]}/${imageWidth}x${imageHeight}/?sig=${uniqueNumbers[amount]}`;
products.push({
code: 'abc' + faker.random.number(),
userCode: userCodes[randomBetween(1, userCodes.length-1)],
title: faker.lorem.sentence(),
subtitle: faker.lorem.sentence(),
description: faker.lorem.paragraphs(),
categoryId: randomBetween(1, 10),
thumbnail: randomThumbnail,
createdAt: new Date(),
updatedAt: new Date()
});
}
return await queryInterface.bulkInsert("products", products, {});
}
};
PS: у пользователя есть много продуктов
Я думаю, что эта причина Async / await, но я новичок в этом виде. Пожалуйста, дайте мне знать, где моя вина в этом случае.
Может ли кто-нибудь помочь мне правильно посеять семена?
Вот мои правила продукта в моделях .Продукт
code: DataTypes.STRING(12),
userCode: DataTypes.STRING,
title: DataTypes.STRING,
subtitle: DataTypes.STRING,
description: DataTypes.TEXT,
categoryId: DataTypes.INTEGER,
thumbnail: DataTypes.STRING,
createdAt: DataTypes.Date,
updatedAt: DataTypes.Date
PS: я могу иногда сеять