Php 语法错误第0行,第349列:错误:预期为文字,Get';aS';
正如标题所示,我的DQL请求遇到了一个问题 以下是我的第一行,它似乎不是bug的核心:Php 语法错误第0行,第349列:错误:预期为文字,Get';aS';,php,database,doctrine-orm,symfony,dql,Php,Database,Doctrine Orm,Symfony,Dql,正如标题所示,我的DQL请求遇到了一个问题 以下是我的第一行,它似乎不是bug的核心: $qb = $this ->createQueryBuilder('p') ->leftJoin('p.localisation', 'loc') ->leftJoin('p.advert', 'a') ->leftJoin('a.accommodationStyle', 'aS') ->leftJo
$qb = $this
->createQueryBuilder('p')
->leftJoin('p.localisation', 'loc')
->leftJoin('p.advert', 'a')
->leftJoin('a.accommodationStyle', 'aS')
->leftJoin('a.accommodationChoice', 'aC')
->where('loc.lat < :maxLat')
->setParameter('maxLat', $maxLat)
->andWhere('loc.lat > :minLat')
->setParameter('minLat', $minLat)
->andWhere('loc.lng < :maxLng')
->setParameter('maxLng', $maxLng)
->andWhere('loc.lng > :minLng')
->setParameter('minLng', $minLng)
;
我提供我的实体的碎片:
该广告包含以下内容:
/**
* @ORM\ManyToOne(targetEntity="MR\PlatformBundle\Entity\AccommodationChoice", inversedBy="adverts", cascade={"persist","remove"})
* @ORM\JoinColumn(nullable=true)
*/
private $accommodationChoice;
/**
* @ORM\ManyToOne(targetEntity="MR\PlatformBundle\Entity\AccommodationStyle", inversedBy="adverts", cascade={"persist","remove"})
* @ORM\JoinColumn(nullable=true)
*/
private $accommodationStyle;
住宿方式,这一种:
/**
* @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationStyle")
*/
private $adverts;
/**
* @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationChoice")
*/
private $adverts;
住宿选择,这个:
/**
* @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationStyle")
*/
private $adverts;
/**
* @ORM\OneToMany(targetEntity="MR\PlatformBundle\Entity\Advert", mappedBy="accommodationChoice")
*/
private $adverts;
还有这个人,另一个:
/**
* @ORM\OneToOne(targetEntity="MR\PlatformBundle\Entity\Advert", inversedBy="author", cascade={"persist","remove"})
* @ORM\JoinColumn(nullable=true)
*/
private $advert;
我研究了关于这个主题的现有帖子,但似乎没有人对此提供帮助,提前感谢您的帮助(非常感谢) 您不能使用
aS
作为别名,因为它是保留字(aS
)。只需选择另一个。您不能使用aS
作为别名,因为它是一个保留字(aS
)。再选一个。我把维拉改成:维拉,但那只是我在写那篇文章的时候犯的一个错误,就像那样简单。谢谢你,特林科特。记住这一点很重要。很好,就这么简单。谢谢你,特林科特。记住这一点很重要。