Optimized database schema

This commit is contained in:
Kevin Frantz
2018-10-31 21:53:30 +01:00
parent 0a18123384
commit ad00c57143
6 changed files with 13 additions and 19 deletions

View File

@@ -11,7 +11,7 @@ use App\Entity\Source\SourceInterface;
/**
* @author kevinfrantz
* @ORM\Table(name="meta_reciever_group")
* @ORM\Table(name="meta_reciever")
* @ORM\Entity()
*/
class Reciever extends AbstractMeta implements RecieverInterface
@@ -29,7 +29,7 @@ class Reciever extends AbstractMeta implements RecieverInterface
protected $relation;
/**
* @ORM\ManyToMany(targetEntity="App\Entity\AbstractSource")
* @ORM\ManyToMany(targetEntity="App\Entity\Source\AbstractSource")
* @ORM\JoinTable(name="meta_reciever_members",
* joinColumns={@ORM\JoinColumn(name="reciever_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="source_id", referencedColumnName="id")}

View File

@@ -34,26 +34,17 @@ final class Relation extends AbstractMeta implements RelationInterface
/**
* Parents represent the creators of the relation.
*
* @ORM\ManyToMany(targetEntity="Relation")
* @ORM\JoinTable(name="meta_relation_parents",
* joinColumns={@ORM\JoinColumn(name="relation_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="relation_id", referencedColumnName="id")}
* )
*
* @ORM\ManyToMany(targetEntity="Relation",mappedBy="childs")
* @var Collection|RelationInterface[]
*/
protected $parents;
/**
* Childs represent the by the object produced relations.
*
* @todo Replace this by self referencing
*
* @see https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/association-mapping.html
* @ORM\ManyToMany(targetEntity="Relation")
* @ORM\JoinTable(name="meta_relation_childs",
* joinColumns={@ORM\JoinColumn(name="relation_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="relation_id", referencedColumnName="id")}
* inverseJoinColumns={@ORM\JoinColumn(name="child_id", referencedColumnName="id")}
* )
*
* @var Collection|RelationInterface[]

View File

@@ -41,7 +41,7 @@ final class Right extends AbstractMeta implements RightInterface
protected $layer;
/**
* @ORM\OneToOne(targetEntity="RecieverGroup",cascade={"persist", "remove"})
* @ORM\OneToOne(targetEntity="Reciever",cascade={"persist", "remove"})
* @ORM\JoinColumn(name="reciever_id", referencedColumnName="id")
*
* @var RecieverInterface