2017-09-10 3 views
0

Je voudrais créer un fichier JSON avec des enregistrements à insérer, puis utiliser model.bulkCreate pour insérer tous les enregistrements à la fois mais quand je lis le fichier je reçois "TypeError: records.map n'est pas une fonction"Sequelize bulkCreate à partir du fichier JSON

database.js

fs.readFile(__dirname + "/databaseTables/consoleAndPlatform.json", function(err, data){ 
    ConsoleAndPlatform.bulkCreate(data.toString()) 
    }) 

consoleAndPlatform.json

[{console: "XBOX", 
platform: "XBOX 360", 
name: "Xbox 360"},{ 
console: "XBOX", 
platform: "XBOX ONE", 
name: "Xbox One"},{ 
console: "XBOX", 
platform: "XBOX LIVE", 
name: "Xbox Live"},{ 
console: "PS", 
platform: "PS4", 
name: "Playstation 4"}] 

Merci pour votre aide

Répondre

0

Ok, j'ai trouvé une solution, peut-être que ce sera utile pour quelqu'un. Tout d'abord JSON a eu tort, devrait être:

[ 
{ 
    "console": "XBOX", 
    "platform": "XBOX 360", 
    "name": "Xbox 360" 
}, 
{ 
    "console": "XBOX", 
    "platform": "XBOX ONE", 
    "name": "Xbox One" 
}, 
{ 
    "console": "XBOX", 
    "platform": "XBOX LIVE", 
    "name": "Xbox Live" 
}] 

et seconde vous devez JSON.parse le résultat de la chaîne:

ConsoleAndPlatform.bulkCreate(JSON.parse(data.toString()))