我有一个项目Yii . 我从我的控制器调用模型来在表格中显示数据
$model = new NewAccForm();
$post = Post::model()->find($model);
var_dump($post);
我在错误上运行代码:
PHP警告
include(Post.php)[<a href='function.include'> function.include </a>]:无法打开流:
没有这样的文件或目录E:\ wamp \ www \ yii \ framework \ YiiBase.php(427)
415 {
416 include($ classFile);
417 if(YII_DEBUG && basename(realpath($ classFile))!== $ className . ' . php')
418抛出新的CException(Yii :: t('yii','类名“”与类不匹配
file“” . ',array(419''=> $ className,420''=> $ classFile,
421)));
422休息;
423}
424}
425}
426其他
427 include($ className . ' . php');
428}
429否则//在PHP 5.3中使用名称空间的类名
430 {
431 $ namespace = str_replace('\',' . ',ltrim($ className,'\'));
432 if(($ path = self :: getPathOfAlias($ namespace))!== false)
433 include($ path . ' . php');
434其他
435返回false;
436}
437返回class_exists($ className,false)||
interface_exists($类名,FALSE); 438}
439返回true;
堆栈跟踪
#0
E:\ wamp \ www \ yii \ framework \ YiiBase.php(427):YiiBase :: autoload()
#1
unknown(0):YiiBase :: autoload(“Post”)
#2
- E:\ wamp \ www \ yii \ amica \ protected \ controllers \ front \ ReportController.php(10):
spl_autoload_call(“Post”)05'1'=>'Mới',06'2'=>'ĐãXóa'07); 08 public function actionIndex(){09 $ model = new ReportForm(); 10 $ post = Post :: model() - > find($ model); 11 var_dump($ post); 12 echo“Thôngbáolỗibibanquảntrị”; 13} 14 15 public function actionCreate(){#3 E:\ wamp \ www \ yii \ framework \ web \ actions \ CInlineAction.php(49):ReportController-> actionIndex()#4 E:\ wamp \ www \ yii \ framework \ web \ CController.php(308):CInlineAction-> runWithParams(array(“r”=>“report”))#5 E:\ wamp \ www \ yii \ framework \ web \ CController.php(286) :CController-> runAction(CInlineAction)#6 E:\ wamp \ www \ yii \ framework \ web \ CController.php(265):CController-> runActionWithFilters(CInlineAction,array())#7 E:\ wamp \ www \ yii \ framework \ web \ CWebApplication.php(282):CController-> run(“”)#8 E:\ wamp \ www \ yii \ framework \ web \ CWebApplication.php(141):CWebApplication-> runController(“report” “)#9 E:\ wamp \ www \ yii \ framework \ base \ CApplication.php(180):CWebApplication-> processRequest()#10 - E:\ wamp \ www \ yii \ amica \ protected \ components \ WebApplicationEndBehavior . php(24):CApplication-> run()19 //附加changeModulePaths事件处理程序20 //并引发它 . 21 $ this-> onModuleCreate = array($ this,'changeModulePaths'); 22 $ this-> onModuleCreate(new CEvent($ this-> owner)); 23 24 $ this-> owner-> run(); //运行应用程序25} 26 27 //当初始化CWebApplication 28 //或CWebModule实例时,应该引发此事件 . 29公共函数onModuleCreate($ event){#11 unknown(0):WebApplicationEndBehavior-> runEnd(“front”)#12 E:\ wamp \ www \ yii \ framework \ base \ CComponent.php(261):call_user_func_array(array (WebApplicationEndBehavior,“runEnd”),array(“front”))#13 - E:\ wamp \ www \ yii \ amica \ index.php(13):CComponent - > __ call(“runEnd”,array(“front”) ))08定义('YII_DEBUG')或定义('YII_DEBUG',真); 09 //指定应在每个定义的日志消息10中显示多少级别的调用堆栈('YII_TRACE_LEVEL')或定义('YII_TRACE_LEVEL',3); 11 12 require_once($ yii); 13 Yii :: createWebApplication($ config) - > runEnd('front'); #14 E:\ wamp \ www \ yii \ amica \ index.php(13):CWebApplication-> runEnd(“front”)
为什么会出现这样的问题?以及如何解决它?谢谢 .
2 回答
post模型应该在路径
protected/models/Post.php
或你的模型Post使用命名空间,你应该设置Yii::setPathOfAlias($alias,$path)
的别名检查文件名中的模型名称的拼写和models / Post.php中的类名,因为它区分大小写,第一个字符必须是大写字母 .