feat: custom field deletion
This commit is contained in:
parent
21ec86839a
commit
2af23f4042
11 changed files with 938 additions and 16 deletions
|
|
@ -253,6 +253,7 @@ msgid "Your password has successfully been reset"
|
|||
msgstr "Ihr Passwort wurde erfolgreich zurückgesetzt"
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/form.ex:67
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:119
|
||||
#: lib/mv_web/live/custom_field_value_live/form.ex:77
|
||||
#: lib/mv_web/live/member_live/form.ex:82
|
||||
#: lib/mv_web/live/user_live/form.ex:127
|
||||
|
|
@ -659,4 +660,41 @@ msgstr "Verwende dieses Formular, um Benutzerdefinierte Feldwerte in deiner Date
|
|||
#: lib/mv_web/live/custom_field_live/show.ex:56
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Auto-generated identifier (immutable)"
|
||||
msgstr "Automatisch generierter Identifier"
|
||||
msgstr "Automatisch generierter Bezeichner (unveränderlich)"
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "%{count} member has a value assigned for this custom field."
|
||||
msgid_plural "%{count} members have values assigned for this custom field."
|
||||
msgstr[0] "%{count} Mitglied hat einen Wert für dieses benutzerdefinierte Feld zugewiesen."
|
||||
msgstr[1] "%{count} Mitglieder haben Werte für dieses benutzerdefinierte Feld zugewiesen."
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:87
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "All custom field values will be permanently deleted when you delete this custom field."
|
||||
msgstr "Alle benutzerdefinierten Feldwerte werden beim Löschen dieses benutzerdefinierten Feldes dauerhaft gelöscht."
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field"
|
||||
msgstr "Benutzerdefiniertes Feld löschen"
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:126
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field and All Values"
|
||||
msgstr "Benutzerdefiniertes Feld und alle Werte löschen"
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:109
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enter slug to confirm"
|
||||
msgstr "Slug zur Bestätigung eingeben"
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:97
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "To confirm deletion, please enter the custom field slug:"
|
||||
msgstr "Um die Löschung zu bestätigen, gib bitte den Slug des benutzerdefinierten Feldes ein:"
|
||||
|
||||
#~ #: lib/mv_web/live/custom_field_live/form.ex:58
|
||||
#~ #, elixir-autogen, elixir-format
|
||||
#~ msgid "Slug"
|
||||
#~ msgstr "Slug"
|
||||
|
|
|
|||
|
|
@ -254,6 +254,7 @@ msgid "Your password has successfully been reset"
|
|||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/form.ex:67
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:119
|
||||
#: lib/mv_web/live/custom_field_value_live/form.ex:77
|
||||
#: lib/mv_web/live/member_live/form.ex:82
|
||||
#: lib/mv_web/live/user_live/form.ex:127
|
||||
|
|
@ -661,3 +662,35 @@ msgstr ""
|
|||
#, elixir-autogen, elixir-format
|
||||
msgid "Auto-generated identifier (immutable)"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "%{count} member has a value assigned for this custom field."
|
||||
msgid_plural "%{count} members have values assigned for this custom field."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:87
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "All custom field values will be permanently deleted when you delete this custom field."
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:126
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field and All Values"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:109
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enter slug to confirm"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:97
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "To confirm deletion, please enter the custom field slug:"
|
||||
msgstr ""
|
||||
|
|
|
|||
|
|
@ -254,6 +254,7 @@ msgid "Your password has successfully been reset"
|
|||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/form.ex:67
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:119
|
||||
#: lib/mv_web/live/custom_field_value_live/form.ex:77
|
||||
#: lib/mv_web/live/member_live/form.ex:82
|
||||
#: lib/mv_web/live/user_live/form.ex:127
|
||||
|
|
@ -661,3 +662,40 @@ msgstr ""
|
|||
#, elixir-autogen, elixir-format
|
||||
msgid "Auto-generated identifier (immutable)"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:79
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "%{count} member has a value assigned for this custom field."
|
||||
msgid_plural "%{count} members have values assigned for this custom field."
|
||||
msgstr[0] ""
|
||||
msgstr[1] ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:87
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "All custom field values will be permanently deleted when you delete this custom field."
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:72
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:126
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Delete Custom Field and All Values"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:109
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "Enter slug to confirm"
|
||||
msgstr ""
|
||||
|
||||
#: lib/mv_web/live/custom_field_live/index.ex:97
|
||||
#, elixir-autogen, elixir-format
|
||||
msgid "To confirm deletion, please enter the custom field slug:"
|
||||
msgstr ""
|
||||
|
||||
#~ #: lib/mv_web/live/custom_field_live/form.ex:58
|
||||
#~ #, elixir-autogen, elixir-format
|
||||
#~ msgid "Slug"
|
||||
#~ msgstr ""
|
||||
|
|
|
|||
|
|
@ -0,0 +1,38 @@
|
|||
defmodule Mv.Repo.Migrations.ChangeCustomFieldDeleteCascade do
|
||||
@moduledoc """
|
||||
Updates resources based on their most recent snapshots.
|
||||
|
||||
This file was autogenerated with `mix ash_postgres.generate_migrations`
|
||||
"""
|
||||
|
||||
use Ecto.Migration
|
||||
|
||||
def up do
|
||||
drop constraint(:custom_field_values, "custom_field_values_custom_field_id_fkey")
|
||||
|
||||
alter table(:custom_field_values) do
|
||||
modify :custom_field_id,
|
||||
references(:custom_fields,
|
||||
column: :id,
|
||||
name: "custom_field_values_custom_field_id_fkey",
|
||||
type: :uuid,
|
||||
prefix: "public",
|
||||
on_delete: :delete_all
|
||||
)
|
||||
end
|
||||
end
|
||||
|
||||
def down do
|
||||
drop constraint(:custom_field_values, "custom_field_values_custom_field_id_fkey")
|
||||
|
||||
alter table(:custom_field_values) do
|
||||
modify :custom_field_id,
|
||||
references(:custom_fields,
|
||||
column: :id,
|
||||
name: "custom_field_values_custom_field_id_fkey",
|
||||
type: :uuid,
|
||||
prefix: "public"
|
||||
)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,124 @@
|
|||
{
|
||||
"attributes": [
|
||||
{
|
||||
"allow_nil?": false,
|
||||
"default": "fragment(\"gen_random_uuid()\")",
|
||||
"generated?": false,
|
||||
"precision": null,
|
||||
"primary_key?": true,
|
||||
"references": null,
|
||||
"scale": null,
|
||||
"size": null,
|
||||
"source": "id",
|
||||
"type": "uuid"
|
||||
},
|
||||
{
|
||||
"allow_nil?": true,
|
||||
"default": "nil",
|
||||
"generated?": false,
|
||||
"precision": null,
|
||||
"primary_key?": false,
|
||||
"references": null,
|
||||
"scale": null,
|
||||
"size": null,
|
||||
"source": "value",
|
||||
"type": "map"
|
||||
},
|
||||
{
|
||||
"allow_nil?": true,
|
||||
"default": "nil",
|
||||
"generated?": false,
|
||||
"precision": null,
|
||||
"primary_key?": false,
|
||||
"references": {
|
||||
"deferrable": false,
|
||||
"destination_attribute": "id",
|
||||
"destination_attribute_default": null,
|
||||
"destination_attribute_generated": null,
|
||||
"index?": false,
|
||||
"match_type": null,
|
||||
"match_with": null,
|
||||
"multitenancy": {
|
||||
"attribute": null,
|
||||
"global": null,
|
||||
"strategy": null
|
||||
},
|
||||
"name": "custom_field_values_member_id_fkey",
|
||||
"on_delete": "delete",
|
||||
"on_update": null,
|
||||
"primary_key?": true,
|
||||
"schema": "public",
|
||||
"table": "members"
|
||||
},
|
||||
"scale": null,
|
||||
"size": null,
|
||||
"source": "member_id",
|
||||
"type": "uuid"
|
||||
},
|
||||
{
|
||||
"allow_nil?": true,
|
||||
"default": "nil",
|
||||
"generated?": false,
|
||||
"precision": null,
|
||||
"primary_key?": false,
|
||||
"references": {
|
||||
"deferrable": false,
|
||||
"destination_attribute": "id",
|
||||
"destination_attribute_default": null,
|
||||
"destination_attribute_generated": null,
|
||||
"index?": false,
|
||||
"match_type": null,
|
||||
"match_with": null,
|
||||
"multitenancy": {
|
||||
"attribute": null,
|
||||
"global": null,
|
||||
"strategy": null
|
||||
},
|
||||
"name": "custom_field_values_custom_field_id_fkey",
|
||||
"on_delete": "delete",
|
||||
"on_update": null,
|
||||
"primary_key?": true,
|
||||
"schema": "public",
|
||||
"table": "custom_fields"
|
||||
},
|
||||
"scale": null,
|
||||
"size": null,
|
||||
"source": "custom_field_id",
|
||||
"type": "uuid"
|
||||
}
|
||||
],
|
||||
"base_filter": null,
|
||||
"check_constraints": [],
|
||||
"custom_indexes": [],
|
||||
"custom_statements": [],
|
||||
"has_create_action": true,
|
||||
"hash": "BDEC02A7F12B14AB65FBA1A4BD834D291E3BEC61D065473D51BBE453486512ED",
|
||||
"identities": [
|
||||
{
|
||||
"all_tenants?": false,
|
||||
"base_filter": null,
|
||||
"index_name": "custom_field_values_unique_custom_field_per_member_index",
|
||||
"keys": [
|
||||
{
|
||||
"type": "atom",
|
||||
"value": "member_id"
|
||||
},
|
||||
{
|
||||
"type": "atom",
|
||||
"value": "custom_field_id"
|
||||
}
|
||||
],
|
||||
"name": "unique_custom_field_per_member",
|
||||
"nils_distinct?": true,
|
||||
"where": null
|
||||
}
|
||||
],
|
||||
"multitenancy": {
|
||||
"attribute": null,
|
||||
"global": null,
|
||||
"strategy": null
|
||||
},
|
||||
"repo": "Elixir.Mv.Repo",
|
||||
"schema": null,
|
||||
"table": "custom_field_values"
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue