diff --git a/migrations/Version20251031141153.php b/migrations/Version20251031141153.php new file mode 100644 index 0000000..d97f795 --- /dev/null +++ b/migrations/Version20251031141153.php @@ -0,0 +1,43 @@ +addSql('ALTER TABLE domain_purchase DROP CONSTRAINT FK_72999E74115F0EE5'); + $this->addSql('ALTER TABLE domain_purchase DROP CONSTRAINT FK_72999E744D085745'); + $this->addSql('ALTER TABLE domain_purchase DROP CONSTRAINT FK_72999E74A76ED395'); + $this->addSql('ALTER TABLE domain_purchase ALTER domain_id DROP NOT NULL'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT FK_72999E74115F0EE5 FOREIGN KEY (domain_id) REFERENCES domain (ldh_name) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT FK_72999E744D085745 FOREIGN KEY (connector_id) REFERENCES connector (id) ON DELETE SET NULL NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT FK_72999E74A76ED395 FOREIGN KEY (user_id) REFERENCES "user" (id) ON DELETE SET NULL NOT DEFERRABLE INITIALLY IMMEDIATE'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE domain_purchase DROP CONSTRAINT fk_72999e74115f0ee5'); + $this->addSql('ALTER TABLE domain_purchase DROP CONSTRAINT fk_72999e744d085745'); + $this->addSql('ALTER TABLE domain_purchase DROP CONSTRAINT fk_72999e74a76ed395'); + $this->addSql('ALTER TABLE domain_purchase ALTER domain_id SET NOT NULL'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT fk_72999e74115f0ee5 FOREIGN KEY (domain_id) REFERENCES domain (ldh_name) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT fk_72999e744d085745 FOREIGN KEY (connector_id) REFERENCES connector (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + $this->addSql('ALTER TABLE domain_purchase ADD CONSTRAINT fk_72999e74a76ed395 FOREIGN KEY (user_id) REFERENCES "user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE'); + } +} diff --git a/src/Entity/DomainPurchase.php b/src/Entity/DomainPurchase.php index 3d6c1c6..3ec0a5d 100644 --- a/src/Entity/DomainPurchase.php +++ b/src/Entity/DomainPurchase.php @@ -15,7 +15,7 @@ class DomainPurchase private ?string $id; #[ORM\ManyToOne(inversedBy: 'domainPurchases')] - #[ORM\JoinColumn(referencedColumnName: 'ldh_name', nullable: false)] + #[ORM\JoinColumn(referencedColumnName: 'ldh_name', onDelete: 'CASCADE')] private ?Domain $domain = null; #[ORM\Column] @@ -28,9 +28,11 @@ class DomainPurchase private ?ConnectorProvider $connectorProvider = null; #[ORM\ManyToOne(inversedBy: 'domainPurchases')] + #[ORM\JoinColumn(referencedColumnName: 'id', nullable: true, onDelete: 'SET NULL')] private ?Connector $connector = null; #[ORM\ManyToOne(inversedBy: 'domainPurchases')] + #[ORM\JoinColumn(referencedColumnName: 'id', nullable: true, onDelete: 'SET NULL')] private ?User $user = null; #[ORM\Column]