[英]Kohana - Check if model exists (Not a record)
我想检查,如果Kohana的模型存在 - 或不存在! 我使用ORM加载模型。
我目前的代码:
// Load model
$myModel = ORM::factory('mymodel')->where('id', '=', 1);
在这种情况下,ORM尝试加载模型 - 但我很确定,模型将不存在,因为到目前为止我还没有创建它。 但这没关系。 而不是尝试加载第一条记录,我必须检查,如果模型存在 - 可能与另一个ORM功能?
我知道,你可以使用ORM::factory('mymodel')->where('id', '=', 1)->loaded()
来检查单个记录/结果。 当我尝试获取第一条记录时,我的kohana引发了异常,确实......
如果模型存在,你们如何检查?
//loading model
$myModel = ORM::factory('mymodel')->where('id', '=', 1)->find();
我觉得你错过了find
链中的方法。
然后你可以检查模型是否按照你想要的方式加载
//checking if loaded
if ($myModel->loaded()) {
编辑
弄清楚模型是否存在
try {
//loading model
$myModel = ORM::factory('mymodel')->where('id', '=', 1);
//more logic
} catch ($e) { //or you can define exception which throws ORM::factory
//doesn't exist
}
empty(Kohana::find_file('classes', 'model/customer')) ? FALSE : TRUE;
嗯,这个模型是一个类。 如果在PHP中加载了“Model_Mymodal”,则可以使用class_exists()进行检查
if(class_exists("Model_Mymodel"))
{
// Do something
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.