Ich habe 2 Entitäten, nämlich Match und Team. Ein Team kann eins zu viele Matches haben. Meine Match-Entität enthält jedoch 2 Felder, die auf dieselbe Entität, Team, verweisen. Sie sind $ homeTeam und $ awayTeam. Wie referenziere ich dasselbe Feld in Team, $ Übereinstimmungen, als eine bidirektionale Beziehung?Doctrine2 Mapping: 2 Felder zu einem Feld zugeordnet (ManyToOne)
Mein aktueller nicht funktionierenden Code ist unten:
Mein Spiel Entity:
/**
* @ORM\Entity
* @ORM\Table(name="match")
**/
class Match {
/**
* @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
* @ORM\JoinColumn(name="home_team_id", referencedColumnName="id")
* **/
protected $homeTeam;
/**
* @ORM\ManyToOne(targetEntity="Team", inversedBy="matches")
* @ORM\JoinColumn(name="away_team_id", referencedColumnName="id")
* **/
protected $awayTeam;
My Team Entity (falsche Ich würde vermuten?):
/**
* @ORM\Entity
* @ORM\Table(name="team")
* **/
class Team {
/** @ORM\OneToMany(targetEntity="Match", mappedBy="homeTeam", mappedBy="awayTeam") **/
protected $matches;
Ich habe das gleiche Problem, aber Sie müssen mit OR-Bedingung verbinden: Hometeam OR AwayTeam, wie in meinem Fall ich mit AND-Bedingung müssen sich registrieren . – Dmitriy