私はoneToMany関係を作成しようとしています。Doctrineはそれを使用してManyToOne一方向imのみを提供するため。どういうわけか、マッピングの検証が失敗し、間違いを見つけることができません。
検証エラー:
[マッピング]FAIL-エンティティクラスの'Strego\ TippBundle \ Entity \ BetRound'マッピングが無効です:*関連付けStrego \ TippBundle \ Entity \ BetRound#userStatusは、所有側のフィールドStrego \ TippBundle \ Entity \ UserBetRoundStatus#betRoundを参照しています。存在しない。
私の最初のエンティティ(BetRound):
<?php
namespace Strego\TippBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\Collection as Collection;
use Strego\AppBundle\Entity\Base as BaseEntity;
/**
* Strego\TippBundle\Entity\BetRound
*
* @ORM\Table()
* @ORM\Entity
*/
class BetRound extends BaseEntity {
//......
/**
*
* @var Collection
* @ORM\OneToMany(targetEntity="UserBetRoundStatus", mappedBy="betRound", cascade={"all"})
*/
protected $userStatus;
}
私の関連エンティティ(UserBetRoundStatus)
<?php
namespace Strego\TippBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Strego\AppBundle\Entity\Base as BaseEntity;
/**
* Strego\TippBundle\Entity\Game
*
* @ORM\Table
* @ORM\Entity
* @UniqueEntity(fields={"user", "betRound"}, message="Unique Entity Validator Fails for UserStatus", groups="unique")
*
*/
class UserBetRoundStatus extends BaseEntity {
// .....
/*
* @var BetRound
* @ORM\ManyToOne(targetEntity="BetRound", inversedBy="userStatus")
* @ORM\JoinColumn(name="betround_id", referencedColumnName="id", nullable=false)
* @Assert\NotNull()
*/
protected $betRound;
}