Good day, eveyrone!
I'm trying to fetch data from Oracle database via Phalcon\Mvc\Model\Query\Builder, but resultset allways empty.
// APPLICATION_ROOT/app/models/Package.php
<?php
use Phalcon\MVC\Model;
class Package extends Model
{
public function getSource()
{
return 'RADIO_PACKAGE';
}
}
The controller class:
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
}
Does anyone know what the problem is?
I tried Phalcon 1.1.0 and 1.2.0.
PDO_OCI driver has been installed from PHP 5.4.16 source.
PHP version is 5.4.11.
Oracle version is "Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - 64bit"
Fixed in 1.2.0 branch, discussion about the problem: http://forum.phalconphp.com/discussion/464/empty-resultset-when-using-phalcon-mvc-model-query-builder
Do you have in public/index.php a setup for Loader ? Something like
$loader = new \Phalcon\Loader();
$loader->registerDirs(
array(
$config->application->controllersDir,
$config->application->modelsDir,
$config->application->pluginsDir
)
)->register();