Add an owner to a release
NOT the artist·s but the user who own this release on this instance.
This commit is contained in:
parent
4bc44971a2
commit
3e86499e10
36
migrations/Version20231001110934.php
Normal file
36
migrations/Version20231001110934.php
Normal file
|
@ -0,0 +1,36 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace DoctrineMigrations;
|
||||
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use Doctrine\Migrations\AbstractMigration;
|
||||
|
||||
/**
|
||||
* Auto-generated Migration: Please modify to your needs!
|
||||
*/
|
||||
final class Version20231001110934 extends AbstractMigration
|
||||
{
|
||||
public function getDescription(): string
|
||||
{
|
||||
return '';
|
||||
}
|
||||
|
||||
public function up(Schema $schema): void
|
||||
{
|
||||
// this up() migration is auto-generated, please modify it to your needs
|
||||
$this->addSql('ALTER TABLE release ADD owner_id INT NOT NULL');
|
||||
$this->addSql('ALTER TABLE release ADD CONSTRAINT FK_9E47031D7E3C61F9 FOREIGN KEY (owner_id) REFERENCES "user" (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
|
||||
$this->addSql('CREATE INDEX IDX_9E47031D7E3C61F9 ON release (owner_id)');
|
||||
}
|
||||
|
||||
public function down(Schema $schema): void
|
||||
{
|
||||
// this down() migration is auto-generated, please modify it to your needs
|
||||
$this->addSql('CREATE SCHEMA public');
|
||||
$this->addSql('ALTER TABLE release DROP CONSTRAINT FK_9E47031D7E3C61F9');
|
||||
$this->addSql('DROP INDEX IDX_9E47031D7E3C61F9');
|
||||
$this->addSql('ALTER TABLE release DROP owner_id');
|
||||
}
|
||||
}
|
|
@ -21,6 +21,10 @@ class Release
|
|||
#[ORM\ManyToMany(targetEntity: Artist::class, inversedBy: 'releases')]
|
||||
private Collection $artists;
|
||||
|
||||
#[ORM\ManyToOne(inversedBy: 'releases')]
|
||||
#[ORM\JoinColumn(nullable: false)]
|
||||
private ?User $owner = null;
|
||||
|
||||
public function __construct()
|
||||
{
|
||||
$this->artists = new ArrayCollection();
|
||||
|
@ -66,4 +70,16 @@ class Release
|
|||
|
||||
return $this;
|
||||
}
|
||||
|
||||
public function getOwner(): ?User
|
||||
{
|
||||
return $this->owner;
|
||||
}
|
||||
|
||||
public function setOwner(?User $owner): static
|
||||
{
|
||||
$this->owner = $owner;
|
||||
|
||||
return $this;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue