fix: generate multitenant foreign keys properly

This commit is contained in:
Zach Daniel 2021-06-06 03:31:22 -04:00
parent d3f51e6746
commit 3e50a0d119

View file

@ -147,6 +147,7 @@ defmodule AshPostgres.MigrationGenerator.Operation do
%{
references:
%{
multitenancy: %{strategy: :context},
table: table,
destination_field: destination_field
} = reference
@ -159,7 +160,7 @@ defmodule AshPostgres.MigrationGenerator.Operation do
"column: #{inspect(destination_field)}",
"name: #{inspect(reference.name)}",
"type: #{inspect(reference_type(attribute, reference))}",
"prefix: \"public\"",
"prefix: prefix()",
on_delete(reference),
on_update(reference)
],
@ -176,7 +177,6 @@ defmodule AshPostgres.MigrationGenerator.Operation do
%{
references:
%{
multitenancy: %{strategy: :context},
table: table,
destination_field: destination_field
} = reference
@ -189,6 +189,7 @@ defmodule AshPostgres.MigrationGenerator.Operation do
"column: #{inspect(destination_field)}",
"name: #{inspect(reference.name)}",
"type: #{inspect(reference_type(attribute, reference))}",
"prefix: \"public\"",
on_delete(reference),
on_update(reference)
],
@ -330,6 +331,7 @@ defmodule AshPostgres.MigrationGenerator.Operation do
"references(:#{table}, column: #{inspect(destination_field)}",
"name: #{inspect(reference.name)}",
"type: #{inspect(reference_type(attribute, reference))}",
"prefix: prefix()",
on_delete(reference),
on_update(reference),
")"