2016-05-13 18:09:35 2546次浏览 3条回答 0 悬赏 10 金钱
class HomePageController extends Controller{
	public function actionIndex(){
		return $this->render('index'); 
	}
}

这样访问:
http://127.0.0.1/yii/b/web/index.php?r=home-page
提示:

Not Found (#404)
Page not found.

哪里有错呢?

最佳答案

  • 回答于 2016-05-13 18:57 举报

    url :
    http://127.0.0.1/yii/b/web/index.php?r=home-page/index
    or

    class HomePageController extends Controller{
    
        public $defaultAction = 'index';
    
        public function actionIndex(){
    	return $this->render('index'); 
        }
    }
    
    1 条回复
    回复于 2016-05-13 22:33 回复

    上面两种方案都不行,还是显示一样的404

    觉得很赞
  • 回答于 2016-05-14 09:47 举报

    学习了,Camel case controller name not well supported #493,view文件夹也需要是'home-page'。

    4 条回复
    回复于 2016-05-14 10:13 回复
    class HomepageController extends Controller
    {
    ………………
    

    http://127.0.0.1/yii/b/web/index.php?r=homepage/index

    Not Found (#404)
    

    然而

    class HomeController extends Controller
    {
        public function actionIndexLoad()
        {
    

    http://127.0.0.1/yii/b/web/index.php?r=home/index-load

    这种方式却是可以的

    回复于 2016-05-14 10:22 回复

    Controller的名称,在url全小写 应该是可以的,我有一个控制器是MemberinfoController,通过URLindex.php?r=memberinfo/index,可以正常访问到.尝试将HomePageController改为HomepageController,通过index.php?r=homepage/index,也正常(yii version 2.0.8)。

    回复于 2016-05-17 09:04 回复

    其实 我也发现 yii2 控制器命名的时候,不使用驼峰法命名好像更方便,直接首字母大写 就行

    回复于 2016-05-17 09:25 回复

    控制器不使用驼峰法命名应可以(目前我是这样命名的),访问的url全小写,好像更好识别。

    , 觉得很赞
您需要登录后才可以回答。登录 | 立即注册
okokad
经理

okokad

注册时间:2016-02-29
最后登录:2017-07-01
在线时长:49小时26分
  • 粉丝12
  • 金钱25
  • 威望80
  • 积分1315

热门问题