From 67989fab7cf8be034e019e5f24ac959a58ef24d9 Mon Sep 17 00:00:00 2001 From: Andreas Granig Date: Thu, 8 Jan 2015 15:05:54 +0100 Subject: [PATCH] MT#10885 Prevent foreign key deletion by schema. Should be handled in mysql directly, not by schema. --- lib/NGCP/Schema/Result/provisioning_voip_subscribers.pm | 7 +++++++ lib/NGCP/Schema/Result/voip_pbx_groups.pm | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/lib/NGCP/Schema/Result/provisioning_voip_subscribers.pm b/lib/NGCP/Schema/Result/provisioning_voip_subscribers.pm index c9340581..18b1ada1 100644 --- a/lib/NGCP/Schema/Result/provisioning_voip_subscribers.pm +++ b/lib/NGCP/Schema/Result/provisioning_voip_subscribers.pm @@ -161,6 +161,13 @@ __PACKAGE__->has_many( { cascade_copy => 0, cascade_delete => 0 }, ); +__PACKAGE__->has_many( + "voip_pbx_group_members", + "NGCP::Schema::Result::voip_pbx_groups", + { "foreign.group_id" => "self.id" }, + { cascade_copy => 0, cascade_delete => 0 }, +); + __PACKAGE__->might_have( "voip_reminder", "NGCP::Schema::Result::voip_reminder", diff --git a/lib/NGCP/Schema/Result/voip_pbx_groups.pm b/lib/NGCP/Schema/Result/voip_pbx_groups.pm index d2c67487..7ffa106d 100644 --- a/lib/NGCP/Schema/Result/voip_pbx_groups.pm +++ b/lib/NGCP/Schema/Result/voip_pbx_groups.pm @@ -38,28 +38,28 @@ __PACKAGE__->belongs_to( "subscriber", "NGCP::Schema::Result::provisioning_voip_subscribers", { "foreign.id" => "self.subscriber_id" }, - { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, + { cascade_copy => 0, cascade_delete => 0 }, ); __PACKAGE__->belongs_to( "group", "NGCP::Schema::Result::provisioning_voip_subscribers", { "foreign.id" => "self.group_id" }, - { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, + { cascade_copy => 0, cascade_delete => 0 }, ); __PACKAGE__->has_many( "groups", "NGCP::Schema::Result::provisioning_voip_subscribers", { "foreign.id" => "self.group_id" }, - { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, + { cascade_copy => 0, cascade_delete => 0 }, ); __PACKAGE__->has_many( "subscribers", "NGCP::Schema::Result::provisioning_voip_subscribers", { "foreign.id" => "self.subscriber_id" }, - { is_deferrable => 1, on_delete => "CASCADE", on_update => "CASCADE" }, + { cascade_copy => 0, cascade_delete => 0 }, ); sub TO_JSON {