简体   繁体   中英

Phalcon MVC model Exception

I'm trying to create an API with Phalcon for the first time. I have been followed the tutorial " http://docs.phalconphp.com/en/latest/reference/tutorial-rest.html ", but encountered a problem. I've been created a new project with all the settings, and inside I got:

  1. a "models" folder with "photos.php" file
  2. a "index.php" with connection to my DB and function to retrieve information from "photos" table

The problem is that when I'm trying to activate the function through the browser i get an Error:

"Phalcon\\Mvc\\Model\\Exception: Model 'photos' could not be loaded in C:\\wamp\\www\\Test\\index.php on line 77".

$photos = $app->modelsManager->executeQuery($phql); // line 77

What can cause this problem?

It's one of three problems:

1 - Your class name in photos.php is not photos.

2 - You have mis-referenced the photos model in your PHQL query.

3 - You have not registered the directory where your models are stored. To do this, add

$loader = new \Phalcon\Loader();
$loader->registerDirs(array(
    '/path/to/models'
))->register();

after

$di = new \Phalcon\DI\FactoryDefault();

but before

$app = new \Phalcon\Mvc\Micro();

If you create project structure using Phalcon developer tool, the config.ini might need an update like this:

from:
modelsDir      = /models/

to:
modelsDir      = **..**/models/

i just faced same issue, got it solved by add require with model path right after $di = new \\Phalcon\\DI\\FactoryDefault(); and

before $app = new \Phalcon\Mvc\Micro($di);

like suggested by brian

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM