photocontestに「imageId」フィールドを持つエンティティ投票があります。結合を使用するときにDoctrine Query builderエラー
投票IDと投票IDを含む画像のfileNameを含むクエリを取得したいと考えています。 エンティティ次のようになります。
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
のparamを使用していないが、これは100%に働きたいという事実に誤りリンクことを認識していますそれはドクリンの関係を完全に貫いています。
ホワイが問題になる可能性がありますが、どうすれば修正できますか?
- >参加( 'v.imageId'、 'I') – LBA
@LBA 'エラー:クラスAppBundle \エンティティ\投票は、これはそうimageId' – aln447