Wie füge ich Anfangsdaten mit Sequelize Migrationen / Seeds hinzu?
Ich versuche, meine erste migration zum Auffüllen der Datenbank testen, aber ich kann Sie nicht arbeiten. Dies ist, was ich in meinem migration:
'use strict';
module.exports = {
up: function (queryInterface, Sequelize) {
return [
queryInterface.bulkInsert('Users', [
{ username: "user1" },
{ username: "user2" }
])];
},
down: function (queryInterface, Sequelize) {
return queryInterface.dropTable('Users');
}
};
Und ich bekomme diese Fehlermeldung:
== 20151024144833-create-conjugation: migrating =======
{ [SequelizeUniqueConstraintError: Validation error]
name: 'SequelizeUniqueConstraintError',
message: 'Validation error',
errors: [],
fields: [] }
Muss es ein einfacher Weg, dies zu tun. Ich habe andere Fragen, aber die syntax hat sich geändert in der aktuellen version von sequelize.
UPDATE
Ok, erkannte ich meinen Fehler: ich war der Annahme, dass sequelize würde kümmern uns um den Zeitstempel. Dies behebt das problem:
up: function (queryInterface, Sequelize) {
console.log(User);
return [
queryInterface.bulkInsert('Users', [
{ username: "user1", createdAt: Date.now(), updatedAt: Date.now() },
{ username: "user2", createdAt: Date.now(), updatedAt: Date.now() }
])
];
}
Aber ich bin immer noch Fragen, ob dies der richtige Weg, um Samen meiner Datenbank. Gibt es einen Weg, es zu tun mit User.create({})
?
InformationsquelleAutor der Frage nachocab | 2015-10-24
Du musst angemeldet sein, um einen Kommentar abzugeben.
Alternative sein könnte, zu verwenden : sequelize Leuchten , Sie konnte init Ihre Tabellen mit Standard-gemeldete Daten als json-Datei oder ein anderes format.
InformationsquelleAutor der Antwort cshion
Können Sie weiter:
Oder Lesen Sie über die "Völkerwanderung" an http://docs.sequelizejs.com/en/latest/docs/migrations/
InformationsquelleAutor der Antwort Eduardo Cuomo
auch für mysql, also
InformationsquelleAutor der Antwort tjp