美好的一天,eveyrone!
我正在尝试通过Phalcon \ Mvc \ Model \ Query \ Builder从Oracle数据库中获取数据,但结果集总是为空。
// APPLICATION_ROOT/app/models/Package.php
<?php
use Phalcon\MVC\Model;
class Package extends Model
{
public function getSource()
{
return 'RADIO_PACKAGE';
}
}
控制器类:
public function indexAction()
{
$packages = Package::find();
var_dump($packages->toArray()); // null
$query = $this->modelsManager->createBuilder()->from('Package')->getQuery();
var_dump($query->execute()->toArray()); // null
// But the direct access to database returns rows
$PDO = $this->getDI()->get('db')->getInternalHandler();
var_dump($PDO->query('SELECT * FROM RADIO_PACKAGE')->fetchAll()); // returns 23 rows
}
有谁知道问题是什么?
我尝试了Phalcon 1.1.0和1.2.0。
PDO_OCI驱动程序已从PHP 5.4.16源代码安装。
PHP版本是5.4.11。
Oracle版本是“Oracle Database 11g企业版版本11.1.0.7.0 - 64位”
答案 0 :(得分:1)
修正了1.2.0分支,讨论了问题:http://forum.phalconphp.com/discussion/464/empty-resultset-when-using-phalcon-mvc-model-query-builder
答案 1 :(得分:0)
你是否在public / index.php中设置了Loader? 像
这样的东西$loader = new \Phalcon\Loader();
$loader->registerDirs(
array(
$config->application->controllersDir,
$config->application->modelsDir,
$config->application->pluginsDir
)
)->register();