【发布时间】:2011-06-27 11:03:36
【问题描述】:
我刚刚使用 Gii 生成了一个名为 gig 的新模块。使用 Gii 生成模块代码后,我更新了 config/main.php 文件以包含“gig”模块,如下所示:
'import'=>array(
'application.models.*',
'application.components.*',
'application.modules.*',
),
'modules'=>array(
// uncomment the following to enable the Gii tool
'gii'=>array(
'class'=>'system.gii.GiiModule',
'password'=>'secretpassword',
),
'gig',
),
现在,当我尝试在浏览器中访问自动生成的 Yii 模块代码时,如下所示:
http://localhost/gig/default/index/
我收到以下错误:
DefaultController 找不到请求的视图“索引”。
为了解决这个问题,我更改了模块 DefaultController.php 中的渲染代码:
$this->render('index');
到这里:
$this->render('gig.views.default.index');
此更改解决了问题,但我想知道我是否遗漏了什么,或者 Gii 是否正在为模块生成错误代码?有人遇到过这个问题吗?我的解决方案正确吗?
现在控制器可以找到视图,我重新加载了页面,只是显示以下错误消息:
试图获取非对象的属性
原来是index.php视图文件下面的代码有问题:
$this->breadcrumbs=array(
$this->module->id,
);
我不确定为什么会这样。我尝试将上面的代码更改为以下内容:
$this->breadcrumbs=array(
Yii::app()->controller->module->id,
);
但这仍然给我同样的错误信息,“试图获取非对象的属性”。
知道可能出了什么问题吗?设置模块代码时我错过了什么吗?我正在使用 Yii 1.1.7
谢谢!
【问题讨论】:
标签: yii