你现在的位置:首页 > PHP网站建设知识库 > Yii > 正文

YII的gii设置方法

一、设置YII的GII。

yii开发中,自动生成代码从版本1.1.2开始,Yii 装备了一个基于 web 的代码生成工具,叫做 Gii。它替代之前的 yiic shell 生成工具(它运行在命令行)。在这一小节中,我们将描述如何使用 Gii 以及如何扩展 Gii 来增加我们的开发生产力。使用Gii

Gii 以一个模块的方式运行,必须在一个已存在的Yii应用内部使用。要使用 Gii,我们首先改变应用配置如下:

return array(
    ......
    'modules'=>array(
        'gii'=>array(
            'class'=>'system.gii.GiiModule',
            'password'=>'pick up a password here',
            // 'ipFilters'=>array(...a list of IPs...),
            // 'newFileMode'=>0666,
            // 'newDirMode'=>0777,
        ),
    ),
);
在上面,我们声明了一个模块名为 gii,它的类是GiiModule。我们也为这个模块指定了一个密码,当访问 Gii 时需要输入。

默认的,处于安全考虑,Gii 被配置为只允许在本地访问。若我们想要在另外信任的机器上访问,可以在如上代码中配置 GiiModule::ipFilters 属性。

因为Gii可以产生并保存新代码文件到已存在的应用中,我们需要确保 web 服务器进程有权限这样做。在上面的 GiiModule::newFileMode 和 GiiModule::newDirMode 属性控制这些新文件和目录应当如何被产生。

注意:Gii 主要是一个开发工具。因此,它应只被安装于一个开发机器上。因为它可以产生新PHP脚本文件到应用中,我们应当注意采取安全措施(例如 password,IP filters)。

现在我们可以通过 URL http://hostname/path/to/index.php?r=gii 访问 Gii ,这里我们假设 http://hostname/path/to/index.php 是访问已存在Yii应用的 URL。

若已存在的Yii应用使用 path 格式的 URL ,我们可以通过 URL http://hostnamepath/to/index.php/gii 访问 Gii。我们也需要增加如下 URL 规则到已存在URL规则的前面:
 

'components'=>array(
    ......
    'urlManager'=>array(
        'urlFormat'=>'path',
        'rules'=>array(
            'gii'=>'gii',
            'gii/<controller:/w+>'=>'gii/<controller>',
            'gii/<controller:/w+>/<action:/w+>'=>'gii/<controller>/<action>',
            ...existing rules...
        ),
    ),
)
Gii 有一个新的默认代码生成器。每个代码生成器负责生成一个特定类型的代码。例如, controller 生成器生成一个控制器类以及一些动作视图脚本;model 生成器为指定的数据表生成一个 ActiveRecord 类。

二、目录存在和权限。

检查yii的工作目录有看有没有建好;
检查工作目录是否有写的权限;
不止一个目录要检查,要看看还有其他相关的目录是否有设置。
在做完以上3个步骤后,我的gii就成功运行。希望这个能给大家一个提示。