https://github.com/djlambert/doctrine2-spatialを使用していますが、「contains」関数でクエリを実行しようとするとエラーが発生します
まず、これを置くと:
dql:
numeric_functions:
Contains: CrEOF\Spatial\ORM\Query\AST\Functions\MySql\Contains
ドキュメント( https://github.com/djlambert/doctrine2-spatial/blob/master/INSTALL.md )のようにormの下で、私はこのエラーがあります:
[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]
Unrecognized options "dql" under "doctrine.orm"
しかし、それを doctrine.orm.entity_managers.default の下に置くと、エラーはありませんが、クエリの実行時にまだエラーが発生します。これが私のコードです:
$sql = 'SELECT DemoTadBundle:DeliveryZone dz WHERE Contains(dz.area, :point)'; //dz.area is of type polygon
$converter = new SpatialConverter();
$q = $this->_em->createQuery($sql)->setParameter('point', $converter->convertToDatabaseValue($address->getPoint())); //$address->getPoint returns an CrEOF\Spatial\PHP\Types\Geometry\Point object
return $q->getOneOrNullResult();
ここにエラーがあります:
[Semantical Error] line 0, col 41 near 'Contains(dz.area,': Error: Class 'Contains' is not defined.
誰かがこの問題を解決するのを手伝ってくれますか?
私のsymfonyのバージョンは2.5です
ありがとうございました。