php - How to use Proxies in Doctrine 2 -
i have following configuration
$isdevmode = \config::get("debug"); self::$config = setup::createannotationmetadataconfiguration(array(app_path.'models'), $isdevmode, app_path.'proxies'); // naming strategy $namingstrategy = new \doctrineextensions\customnamingstrategy(); self::$config->setnamingstrategy($namingstrategy); // database configuration parameters self::$conn = array( 'url' => \config::get('db_dsn') ); self::$evm = new \doctrine\common\eventmanager; // table prefix $tableprefix = new \doctrineextensions\tableprefix(\config::get('table_prefix')); self::$evm->addeventlistener(events::loadclassmetadata, $tableprefix); self::$entitymanager = entitymanager::create(self::$conn, self::$config, self::$evm); from doctrine 2 documentation understand, should generate proxy classes in app_path.'proxies' folder ( when $isdevmode true. should happen automatically).
unfortunately doesn't automatically generated classes. don't know reason. generated these classes manually using following command php vendor/bin/doctrine orm:generate-proxies. classes generated , exist in folder. in order try proxy classes wrote following lines:
$qq = $this->repositorypages ->createquerybuilder('p') ->select('p.title') ->where('p.id = :id') ->setparameter('id', 6) ->getquery()->getresult(); var_dump($qq); unfortunately me returns associative array
array (size=1) 0 => array (size=1) 'title' => string 'welcome' (length=7) what wrong , need object ?
i think forgot add 1 setter
self::config->setautogenerateproxyclasses(true); i forgot add example:
$this->repositorypages ->createquerybuilder('p') ->where('p.id = :id') ->setparameter('id', 6) ->getquery()->getresult();
Comments
Post a Comment