Funkcjonalność seed Knex.js nie zapewnia żadnej kolejności gwarancji wykonania. Każde ziarno powinno być napisane tak, aby można je było wykonać w izolacji – czyli tzw. Twoje podejście do pojedynczego pliku jest poprawne.
Jeśli chcesz podzielić swoje indywidualne pliki seed na podmoduły, możesz spróbować następujących czynności:
// initial-data.js
var operatingSystems = require('./initial-data/operating-systems.js');
var servers = require('./initial-data/servers.js');
exports.seed = function(knex, Promise) {
return operatingSystems.seed(knex, Promise)
.then(function () {
return servers.seed(knex, Promise);
}).then(function() {
// next ordered migration...
});
}