【问题标题】:Phalcon MVC model ExceptionPhalcon MVC 模型异常
【发布时间】:2013-12-08 12:56:46
【问题描述】:
我第一次尝试使用 Phalcon 创建 API。
我一直遵循教程“http://docs.phalconphp.com/en/latest/reference/tutorial-rest.html”,但遇到了问题。
我已经创建了一个包含所有设置的新项目,在里面我得到了:
- 带有
"photos.php" 文件的"models" 文件夹
-
"index.php" 连接到我的数据库并具有从“照片”表中检索信息的功能
问题是当我尝试通过浏览器激活该功能时,我得到一个错误:
“Phalcon\Mvc\Model\Exception: 无法在第 77 行的C:\wamp\www\Test\index.php 中加载模型‘照片’”。
$photos = $app->modelsManager->executeQuery($phql); // line 77
什么会导致这个问题?
【问题讨论】:
标签:
php
autoload
phalcon
executequery
【解决方案1】:
这是三个问题之一:
1 - 您在 photos.php 中的类名不是照片。
2 - 您在 PHQL 查询中错误引用了照片模型。
3 - 您尚未注册存储模型的目录。为此,请添加
$loader = new \Phalcon\Loader();
$loader->registerDirs(array(
'/path/to/models'
))->register();
之后
$di = new \Phalcon\DI\FactoryDefault();
但之前
$app = new \Phalcon\Mvc\Micro();
【解决方案2】:
如果您使用 Phalcon 开发者工具创建项目结构,config.ini 可能需要像这样更新:
from:
modelsDir = /models/
to:
modelsDir = **..**/models/
【解决方案3】:
我刚遇到同样的问题,通过在 $di = new \Phalcon\DI\FactoryDefault(); 和之后添加带有模型路径的 require 解决了它
before $app = new \Phalcon\Mvc\Micro($di);
喜欢布赖恩的建议