我在通用函数中动态加载模型,我注意到有时我想跳过加载模型,因为它会引发 404 错误。
如何检查模型是否存在?
就像是:
if($this->modelexists($type) {
$this->loadModel($type);
} else {
return "xxx";
}
由于您没有指定您的版本,所以我将我的答案分为两部分,一个用于 1.3,一个用于 2.0。
蛋糕PHP 1.3
The loadModel()
如果找不到模型,方法将返回 false,请参阅API文档 http://api.cakephp.org/1.3/class-Controller.html#_loadModel。所以只需检查它不会返回 false,例如:
if(!$this->loadModel($type)) {
return "xxx";
}
蛋糕PHP 2.0
如果模型类不存在,则loadModel()
方法会抛出一个MissingModelException
,所以只要抓住它。
See the API docs http://api.cakephp.org/2.2/class-MissingModelException.html关于这一点。
Example:
try {
$this->loadModel($type);
} catch(MissingModelException $e) {
// Model not found!
echo $e->getMessage();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)