我想使用Yii文档生成器,我已经在protected / commands中提取了源代码。
当我尝试运行命令时:
yiic docs check
它说:
Yii command runner (based on Yii v1.1.8)
Usage: c:\wamp\www\FRAMEW~1\yiic <command-name> [parameters...]
The following commands are available:
- message
- migrate
- shell
- webapp
To see individual command help, use the following:
c:\wamp\www\FRAMEW~1\yiic help <command-name>
我是否需要编辑任何配置才能运行docs
命令?
答案 0 :(得分:5)
您可以通过将命令添加到commandMap来将命令添加到CConsoleApplication。
将其添加到您的protected/config/console.php
:
'commandMap' => array(
'docs' => array(
// alias of the path where you extracted the DocsCommand.php
'class' => 'application.commands.DocsCommand',
)
),
之后yiic docs
将运行DocsCommand,它也应出现在可用命令列表中。
您必须在控制台应用程序配置中执行此操作,因为CWebapplication和CConsoleApplication具有许多您可以通过配置设置的不同属性。此示例中的commandMap
是CConsoleApplication的属性,但不是CWebApplication的属性,因此您只能在控制台应用程序中定义它。在Yii's Definitive Guide
另外,如果您查看受应用程序保护路径中的yiic.php,您会看到它包含console.php
文件:
<?php
// change the following paths if necessary
$yiic=dirname(__FILE__).'/../yii/framework/yiic.php';
$config=dirname(__FILE__).'/config/console.php';
require_once($yiic);
如果您的配置对于Web和控制台应该是相同的,例如数据库连接,您可以将其放入自己的配置文件中,例如config/db.php
并将其包含在config/main.php
和config/console.php
中,如下所示:
'db' => include(dirname(__FILE__). '/db.php'),