knex を使用してデータベースをシードしようとしています。寄稿者の助けを借りて、いくつかの手順を実行する必要がある 1 つのテーブルのシードに成功しました。
- シード テーブルの外部キー値を入力できるように、いくつかの外部テーブルから ID 値を取得する必要があります。
- シード テーブルにn 個のレコードを生成します。
- テーブルにデータを入力します。
前述のように、これは1つのテーブルで機能しています。私はルーフィングタックよりも賢く、別のテーブルに対してほぼ同じことを行う必要があるため、最初のシードファイルで機能していたものをコピーし、2 番目のシードファイルにドロップし、いくつかの適切な変更を加えました (具体的には、2番目のテーブルでは、この時点で1つの外部キー値を入力するだけで済みます)...機能しません。
私は途方に暮れています。確かに、このコードに欠けているばかげた小さなことがいくつかありますが、それを見つけることができません。units
値を入力する必要があるテーブルをシードしようとしていproperties.id
ます。
exports.seed = function(knex, Promise) {
console.log('Seeding the %s table...', tableName);
Promise.resolve([
'properties',
])
.map(function(table) {
// Pull foreign key values (property_id)
var ids = knex.select('id').from(table).pluck('id');
// AT THIS POINT THE ids VARIABLE HAS A VALUE
return ids;
})
.spread(function(properties) {
// BUT I NEVER SEE THIS LOG PRINT
console.log('SPREADING UNITS');
});
};
私は何を間違っていますか?私はこのことに落ち込みましたが.catch()
、.error()
ログには何も書き込まれません。.spread(...)
どういうわけか、私は決してメソッドに立ち入らないようです。
アップデート
それが何であれ、これは.map
返される前のメソッドの内容です...
{ client:
{ Formatter: { [Function: Formatter_MySQL] super_: [Function: Formatter] },
Raw: { [Function: Raw_MySQL] super_: [Object] },
Transaction: { [Function: Transaction_MySQL] super_: [Object] },
QueryBuilder: { [Function: QueryBuilder_MySQL] super_: [Object] },
QueryCompiler: { [Function: QueryCompiler_MySQL] super_: [Function: QueryCompiler] },
migrationConfig: { tableName: 'knex_migration', directory: './migrations' },
seedConfig: { directory: './seeds' },
Runner: { [Function: Runner_MySQL] super_: [Function: Runner] },
connectionSettings:
{ host: '127.0.0.1',
port: '3306',
user: 'root',
password: '',
database: 'realster',
timezone: 'UTC',
charset: 'utf8',
debug: false },
Pool: { [Function: Pool_MySQL] super_: [Function: Pool] },
databaseName: 'realster',
pool: { client: [Circular], config: [Object], genericPool: [Object] },
_events: { start: [Function], query: [Function] },
Seeder: { [Function: Seeder_MySQL] super_: [Function: Seeder] } },
_single: { table: 'properties', pluck: 'id' },
_statements:
[ { grouping: 'columns', value: [Object] },
{ grouping: 'columns', type: 'pluck', value: 'id' } ],
_errors: [],
_joinFlag: 'inner',
_boolFlag: 'and',
_notFlag: false,
and: [Circular],
_method: 'pluck' }