2018-03-02 16:45:43 4384次浏览 4条回答 0 悬赏 10 金钱

An Error occurred while handling another error:
exception 'yii\base\UnknownClassException' with message 'Unable to find 'api\controllers\SiteController' in file: E:\wamp\www\advanced/api/controllers/SiteController.php. Namespace missing?' in E:\wamp\www\advanced\vendor\yiisoft\yii2\BaseYii.php:296
Stack trace:
#0 [internal function]: yii\BaseYii::autoload('api\controllers...')
#1 [internal function]: spl_autoload_call('api\controllers...')
#2 E:\wamp\www\advanced\vendor\yiisoft\yii2\base\Module.php(637): class_exists('api\controllers...')
#3 E:\wamp\www\advanced\vendor\yiisoft\yii2\base\Module.php(596): yii\base\Module->createControllerByID('site')
#4 E:\wamp\www\advanced\vendor\yiisoft\yii2\base\Module.php(522): yii\base\Module->createController('site/error')
#5 E:\wamp\www\advanced\vendor\yiisoft\yii2\web\ErrorHandler.php(108): yii\base\Module->runAction('site/error')
#6 E:\wamp\www\advanced\vendor\yiisoft\yii2\base\ErrorHandler.php(111): yii\web\ErrorHandler->renderException(Object(yii\web\NotFoundHttpException))
#7 [internal function]: yii\base\ErrorHandler->handleException(Object(yii\web\NotFoundHttpException))
#8 {main}
Previous exception:
exception 'yii\web\NotFoundHttpException' with message 'Page not found.' in E:\wamp\www\advanced\vendor\yiisoft\yii2\web\Request.php:284
Stack trace:
#0 E:\wamp\www\advanced\vendor\yiisoft\yii2\web\Application.php(82): yii\web\Request->resolve()
#1 E:\wamp\www\advanced\vendor\yiisoft\yii2\base\Application.php(386): yii\web\Application->handleRequest(Object(yii\web\Request))
#2 E:\wamp\www\advanced\api\web\index.php(17): yii\base\Application->run()
#3 {main}

补充于 2018-03-05 10:32

QQ截图20180305102945.png

  • 回答于 2018-03-03 11:30 举报

    报错提示是 namespace的问题

  • 回答于 2018-03-05 10:21 举报

    是你某个文件指定了命名空间为 api\controllers\SiteController
    但是在这个目录下又没有这个文件,或者是你的命名空间路径错误

    3 条回复
    回复于 2018-03-05 10:33 回复

    看我截图,路径都对的

    回复于 2018-03-05 10:43 回复

    路径对的,但命名空间有可能错的,你查下 你的 api这个aliase(别名)是否跟路径一致

    回复于 2018-03-05 10:47 回复

    Yii::setAlias('@api', dirname(dirname(DIR)) . '/api');

  • 回答于 2018-03-05 17:55 举报

    仔细读几遍报错信息吧
    或者
    把 SiteController 文件的 前20行代码帖出来看看
    包含 <?php ...

  • 回答于 2018-03-06 19:31 举报

    你请求的url有问题 比如你请求的 http://www.a.com/user/create
    使用yii的restful规范

    就是请求 http://www.a.com/users  使用post方式
    
    1 条回复
    回复于 2018-03-06 19:32 回复

    在控制器名后边加个 s ,然后对应的请求方式

您需要登录后才可以回答。登录 | 立即注册
lycariel
见习主管

lycariel

注册时间:2017-04-28
最后登录:2020-01-20
在线时长:24小时50分
  • 粉丝2
  • 金钱20
  • 威望0
  • 积分260

热门问题