我讀了一些有關單證ORM & Symfony的,但英語不是我的母語,也許我錯過了什麼:) 我只會讓&眼鏡預訂之間的連接 我有這樣的錯誤:問題與相關實體
[Semantical Error] line 0, col 70 near 'r WHERE a.id': Error: Class AppBundle\Entity\Reservation has no association named Reservation
我的實體
class Reservation
{
/**
* @ORM\ManytoOne (targetEntity="AppBundle\Entity\Spectacles", inversedBy="id")
* @ORM\JoinColumn(name="id", referencedColumnName="id")
*/
private $spectacle;
}
class Spectacles
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
* @ORM\OneToMany(targetEntity="AppBundle\Entity\Reservation", mappedBy="spectacle")
*
*/
private $id;
}
我的倉庫
class ReservationRepository extends \Doctrine\ORM\EntityRepository
{
public function FindHowMunchRemains($id)
{
return $this->createQueryBuilder('a')
->join('a.Reservation','r')
->where('a.id=:id')
->setParameter('id',$id)
->getQuery()
->getResult();
}
}
編輯:
我'失去了ORM(我認爲這是我的大問題,用symfony ......我嘗試閱讀文檔,但沒有很明顯,也許這不是我的母語。
我想創建這個模式,你可以幫助我只在關鍵的源代碼的結果?
見下
你可以添加到問題你想實現什麼? – Akkusativobjekt
看起來您正在通過執行'Reservation>(通過執行' - > join('a.Reservation','r')')到'Reservation'(作爲它的'ReservationRepository')。你可能想要加入'a.spectacle'或者做一些像'a.reservation',但是在'SpectacleRepository'中,取決於你想要做什麼。 –
謝謝Jakub,我嘗試使用Spectacle Repository(這是合乎邏輯的),但我有一個像以前的錯誤一樣的錯誤。 [語義錯誤]第0行,第69列'r WHERE a.id'附近:錯誤:類AppBundle \ Entity \ Spectacles沒有關聯,名爲Reservation @Akkusativobjekt我試圖讓一個連接明白 –