0
我剛剛安裝StofDoctrineExtensionsBundle使用SQL函數MONTH()和YEAR(),但我不斷收到此錯誤:YEAR()和MONTH()在Doctrine2與Symfony的2.4
試圖加載類「月「來自/var/www/symfony/vendor/doctrine/orm/lib/Doctrine/ORM/Query/Parser.php 3389行的命名空間」DoctrineExtensions \ Query \ Mysql「。你需要從另一個命名空間」使用「它嗎?
在我的控制器我有這樣的:
$dql = "SELECT x FROM PFCFisiogestBundle:FacturaEmitida x WHERE MONTH(x.fecha) BETWEEN '".$mes_inicio."' AND '".$mes_fin."'
AND YEAR(x.fecha) = '".$ano."' ORDER BY x.numero DESC";
$queryDefault = $em->createQuery($dql);
而且在config.yml
doctrine:
dbal:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
orm:
auto_generate_proxy_classes: "%kernel.debug%"
auto_mapping: true
dql:
string_functions:
MONTH: DoctrineExtensions\Query\Mysql\Month
YEAR: DoctrineExtensions\Query\Mysql\Year
我缺少什麼? :-(
驗證您有供應商/ berberlei/DoctrineExtension目錄。您引用的stof捆綁包不會加載這些特定的擴展,您可能需要在您的composer.json文件中添加:「beberlei/DoctrineExtensions」:「*」。 – Cerad 2014-09-10 15:16:03