Yii文档生成器不接受docs命令

时间:2011-12-23 11:46:56

标签: php yii documentation-generation

我想使用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命令?

1 个答案:

答案 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.phpconfig/console.php中,如下所示:

'db' => include(dirname(__FILE__). '/db.php'),