alembic_pg_autogen.render¶
Render functions for emitting migration code for PostgreSQL objects.
Module Contents¶
Functions¶
Render a CREATE OR REPLACE FUNCTION via op.execute(). |
|
Render a CREATE OR REPLACE FUNCTION (replace) via op.execute(). |
|
Render a DROP FUNCTION via op.execute(). |
|
Render a CREATE TRIGGER via op.execute(). |
|
Render DROP TRIGGER + CREATE TRIGGER via two op.execute() calls. |
|
Render a DROP TRIGGER via op.execute(). |
|
Render a CREATE OR REPLACE VIEW via op.execute(). |
|
Render a CREATE OR REPLACE VIEW (replace) via op.execute(). |
|
Render a DROP VIEW via op.execute(). |
|
Wrap a DDL string in an |
|
Quote a DDL string for inclusion in generated Python source. |
API¶
- alembic_pg_autogen.render._render_create_function(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.CreateFunctionOp) str¶
Render a CREATE OR REPLACE FUNCTION via op.execute().
- alembic_pg_autogen.render._render_replace_function(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.ReplaceFunctionOp) str¶
Render a CREATE OR REPLACE FUNCTION (replace) via op.execute().
- alembic_pg_autogen.render._render_drop_function(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.DropFunctionOp) str¶
Render a DROP FUNCTION via op.execute().
- alembic_pg_autogen.render._render_create_trigger(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.CreateTriggerOp) str¶
Render a CREATE TRIGGER via op.execute().
- alembic_pg_autogen.render._render_replace_trigger(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.ReplaceTriggerOp) list[str]¶
Render DROP TRIGGER + CREATE TRIGGER via two op.execute() calls.
- alembic_pg_autogen.render._render_drop_trigger(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.DropTriggerOp) str¶
Render a DROP TRIGGER via op.execute().
- alembic_pg_autogen.render._render_create_view(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.CreateViewOp) str¶
Render a CREATE OR REPLACE VIEW via op.execute().
- alembic_pg_autogen.render._render_replace_view(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.ReplaceViewOp) str¶
Render a CREATE OR REPLACE VIEW (replace) via op.execute().
- alembic_pg_autogen.render._render_drop_view(_autogen_context: alembic.autogenerate.api.AutogenContext, op: alembic_pg_autogen.ops.DropViewOp) str¶
Render a DROP VIEW via op.execute().
- alembic_pg_autogen.render._render_execute(ddl: str) str¶
Wrap a DDL string in an
op.execute(...)call with safe quoting.
- alembic_pg_autogen.render._quote_ddl(ddl: str) str¶
Quote a DDL string for inclusion in generated Python source.
Alembic’s
_indent()adds leading spaces to every line of the rendered op text (re.sub(r"^", " ", text, flags=re.M)). Multi-line triple-quoted string literals would absorb that indentation into the string value, silently corrupting the DDL.To avoid this, multi-line DDL always uses
repr()which escapes newlines as\n, producing a single-line literal that is immune to re-indentation. Single-line DDL may use triple-quoting for readability when it contains quotes or backslashes.