В фотоконкурсе есть голос объект с полем «imageId».Ошибка построения ошибки запроса Doctrine при использовании объединений
Я хотел бы получить запрос, содержащий идентификатор голосования и имя файла изображения, которое Идентификация имеет. Лицо выглядит следующим образом:
class Vote
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $id;
/**
* @ORM\Column(type="integer", name="image_id")
* @var integer $imageId
* @ORM\ManyToOne(targetEntity="Image")
* @ORM\JoinColumn(name="image_id", referencedColumnName="id")
*/
protected $imageId;
/**
* @ORM\Column(type="datetime", name="date")
*/
protected $date;
И образ его связь нравится это:
class Image {
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $id;
/**
* @ORM\Column(type="string", length=255, name="file_name")
* @var string $fileName
*/
protected $fileName;
Теперь я пытался получить результаты путем использования этого конструктора запросов:
$votes = $qb -> select("v.id, i.fileName, v.date")
->from("AppBundle:Vote", "v")
->join("AppBundle:Image", "i")
->orderBy("v.id", "DESC")
->getQuery();
Использование в этой конфигурации дает мне сообщение об ошибке:
Expected Literal, got 'BY'
Но после удаления OrderBy я получаю этот результат
Error: Expected Doctrine\ORM\Query\Lexer::T_WITH, got end of string.
Я знаю, что ссылки ошибок на то, что я не использовал WITH
параметров внутри объединения, но хотелось бы, чтобы это работало 100% хорошо, и это полностью зависит от диклонических отношений.
Может быть, проблема и как ее исправить?
-> Join ('v.imageId', 'я') – LBA
@LBA 'Ошибка: Класс AppBundle \ Entity \ Vote не имеет связи с именем imageId' – aln447