2017-06-08 2 views
0

In meiner Anwendung muss ich Daten in die Datenbank, was ist der beste Weg, dies zu tun und wo sollte ich den Code zum Seeding der Daten zu schreiben, was die sein sollte Ordnerstruktur dafür.Was ist der beste Weg, um Daten in nodejs mongoose

Ich bin Rails-Entwickler und Rails Framework hat eine schöne Möglichkeit für das Seeding der Daten in seeds.rb, und ich möchte dasselbe in meiner Nodejs-Anwendung erreichen.

Da ich neu bei NodeJs bin, bin ich verwirrt zwischen verschiedenen verfügbaren Ressourcen im Web.

+0

Was genau Sie verwirrt? Hast du etwas versucht? –

+0

Node/Express ist nicht wie Rails meinungsgebunden und folgt keiner Konvention. Also, fügen Sie einfach eine seed.js mit einem create code und 'module.export' hinzu. Platziere 'if (seedDB) {require (seed.js)()}' in deiner Hauptserver/Indexdatei. 'seedDB' ist ein Flag, um den Seed ein- und auszuschalten. –

Antwort

0

Sie können das mongoose-data-seed-Paket verwenden, um diesen Auftrag zu verarbeiten.

https://github.com/sharvit/mongoose-data-seed

Mit mongoose-data-seed Sie erstellen im Grunde seeders Dateien, die so aussehen:

import { Seeder } from 'mongoose-data-seed'; 
import { User } from '../server/models'; 

const data = [{ 
    email: '[email protected]', 
    password: '123123', password_confirmation: '123123', 
    isAdmin: true 
}, { 
    email: '[email protected]', 
    password: '123123', password_confirmation: '123123', 
    isAdmin: false 
}]; 

class UsersSeeder extends Seeder { 

    async shouldRun() { 
    const usersCount = await User.count().exec(); 

    return usersCount === 0; 
    } 

    async run() { 
    return User.create(data); 
    } 
} 

export default UsersSeeder; 
Verwandte Themen