Elloo, у меня есть две сущности доктрины, и я пытаюсь выполнить левое соединение, однако я получаю сообщение "Ошибка: класс GR \ Entity \ AccountEvents не имеет ассоциации с именем Accounts". я смотрел на другие решения на stackoverflow, но ни одно не помогло.
вот мой код
<?php
namespace GR\Entity;
/**
*
* @Table(name="accounts")
* @Entity
*/
class Accounts
{
/**
*
* @var integer $id
* @Column(name="id", type="integer",nullable=false)
* @Id
* @GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @Column(type="string",length=255,nullable=false)
* @var string
*/
private $name;
/**
* @Column(type="string",length=255,nullable=false)
* @var string
*/
private $email;
/**
* @Column(type="string",length=255,nullable=false)
* @var string
*/
private $password;
/**
* @Column(type="datetime",nullable=false)
* @var datetime
*/
private $created_at;
/**
* @OneToMany(targetEntity="AccountEvents", mappedBy="Accounts")
*/
private $accountevents;
public function __get($property)
{
return $this->$property;
}
public function __set($property,$value)
{
$this->$property = $value;
}
}
.. и
<?php
namespace GR\Entity;
/**
*
* @Table(name="account_events")
* @Entity
*/
class AccountEvents
{
/**
*
* @var integer $id
* @Column(name="id", type="integer",nullable=false)
* @Id
* @GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var Accounts $accounts
*
* @Column(name="account_id", type="integer", nullable=false)
* @ManyToOne(targetEntity="Accounts", inversedBy="accountevents")
* @JoinColumn(name="accounts_id", referencedColumnName="id")
*/
private $accounts;
/**
* @Column(type="string",length=255,nullable=true)
* @var string
*/
private $event;
/**
* @Column(type="datetime",nullable=false)
* @var datetime
*/
private $created_at;
public function __get($property)
{
return $this->$property;
}
public function __set($property,$value)
{
$this->$property = $value;
}
}
.. и мой запрос
$query = $this->em->createQueryBuilder()
->select('a, e')
->from('GR\Entity\AccountEvents', 'e')
->leftJoin('e.Accounts', 'a')
->query();
$results = $query->getResult();
Заранее спасибо