createTableFKs() — drizzle-orm Function Reference
Architecture documentation for the createTableFKs() function in introspect-gel.ts from the drizzle-orm codebase.
Entity Profile
Dependency Diagram
graph TD 038eef43_b327_d03b_1631_0ab1345e5067["createTableFKs()"] ac795a29_c480_454a_c930_ea8898cad46c["introspect-gel.ts"] 038eef43_b327_d03b_1631_0ab1345e5067 -->|defined in| ac795a29_c480_454a_c930_ea8898cad46c d6ed66aa_aafe_f478_835c_7c02934633eb["schemaToTypeScript()"] d6ed66aa_aafe_f478_835c_7c02934633eb -->|calls| 038eef43_b327_d03b_1631_0ab1345e5067 75b32510_d64f_63b3_5a7e_75ed201613df["paramNameFor()"] 038eef43_b327_d03b_1631_0ab1345e5067 -->|calls| 75b32510_d64f_63b3_5a7e_75ed201613df 13b884c4_04ee_3a07_de49_bfbf8819424d["withCasing()"] 038eef43_b327_d03b_1631_0ab1345e5067 -->|calls| 13b884c4_04ee_3a07_de49_bfbf8819424d style 038eef43_b327_d03b_1631_0ab1345e5067 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
drizzle-kit/src/introspect-gel.ts lines 1065–1091
const createTableFKs = (fks: ForeignKey[], schemas: Record<string, string>, casing: Casing): string => {
let statement = '';
fks.forEach((it) => {
const tableSchema = schemas[it.schemaTo || ''];
const paramName = paramNameFor(it.tableTo, tableSchema);
const isSelf = it.tableTo === it.tableFrom;
const tableTo = isSelf ? 'table' : `${withCasing(paramName, casing)}`;
statement += `\n\t`;
statement += `foreignKey({\n`;
statement += `\t\t\tcolumns: [${it.columnsFrom.map((i) => `table.${withCasing(i, casing)}`).join(', ')}],\n`;
statement += `\t\t\tforeignColumns: [${
it.columnsTo.map((i) => `${tableTo}.${withCasing(i, casing)}`).join(', ')
}],\n`;
statement += `\t\t\tname: "${it.name}"\n`;
statement += `\t\t})`;
statement += it.onUpdate && it.onUpdate !== 'no action' ? `.onUpdate("${it.onUpdate}")` : '';
statement += it.onDelete && it.onDelete !== 'no action' ? `.onDelete("${it.onDelete}")` : '';
statement += `,`;
});
return statement;
};
Domain
Subdomains
Defined In
Called By
Source
Frequently Asked Questions
What does createTableFKs() do?
createTableFKs() is a function in the drizzle-orm codebase, defined in drizzle-kit/src/introspect-gel.ts.
Where is createTableFKs() defined?
createTableFKs() is defined in drizzle-kit/src/introspect-gel.ts at line 1065.
What does createTableFKs() call?
createTableFKs() calls 2 function(s): paramNameFor, withCasing.
What calls createTableFKs()?
createTableFKs() is called by 1 function(s): schemaToTypeScript.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free