UNPKG

@wmfs/pg-model

Version:

Takes a relational database structure and returns model objects for noSQL-like abilities.

20 lines (16 loc) 761 B
module.exports = function getPreStatementHookFunction (parentFullTableName, columnJoin) { return function preStatementHook (scriptEntry, ctx) { const parentPkValues = ctx.lastCreatedPrimaryKey[parentFullTableName] const fkValuesToAutoFill = {} for (const [parentColumnName, childColumnName] of Object.entries(columnJoin)) { fkValuesToAutoFill[parentColumnName] = parentPkValues[childColumnName] } const scriptEntryColumnNames = scriptEntry.columnNames const scriptEntryValues = scriptEntry.params scriptEntryColumnNames.forEach((columnName, index) => { if (Object.prototype.hasOwnProperty.call(fkValuesToAutoFill, columnName)) { scriptEntryValues[index] = fkValuesToAutoFill[columnName] } }) } }