PHP:将minScript扩展安装到Yii框架
我已经调试了很长一段时间,但找不到任何解决方案——所以这是我最后的希望 我正试图按照本指南为Yii安装/配置名为minScript的扩展 我将提取的扩展放在我的扩展文件夹中,并将config/main.php更改为以下内容:PHP:将minScript扩展安装到Yii框架,php,yii,Php,Yii,我已经调试了很长一段时间,但找不到任何解决方案——所以这是我最后的希望 我正试图按照本指南为Yii安装/配置名为minScript的扩展 我将提取的扩展放在我的扩展文件夹中,并将config/main.php更改为以下内容: return array( 'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..', 'name'=>'Demo app', 'controllerMap'=>array( 'min'=>
return array(
'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
'name'=>'Demo app',
'controllerMap'=>array(
'min'=>array(
'class'=>'ext.minScript.controllers.ExtMinScriptController',
),
),
...
// application components
'components'=>array(
'clientScript'=>array(
'class'=>'ext.minScript.components.ExtMinScript',
'minScriptDebug'=>true,
),
...
虽然我尝试运行它时,会收到一条错误消息:
CEException
别名“ext.minScript.components.ExtMinScript”无效。确保它指向现有的PHP文件并且该文件可读
该文件存在于已定义的文件夹中且可读,但始终会显示错误消息
有人知道我做错了什么吗?在返回之前尝试插入(您需要声明别名ext
-在扩展目录中设置):
如果您的安装在Linux上。我浪费了很多时间试图解决视图和其他组件或扩展的相同问题 如果没有,请尝试删除:
'minScriptDebug'=>true,
从“组件”块
此外,资产和受保护/运行时应该是可写的(递归)
您的文件结构应该如下所示:
protected/extensions/minScript/
components/
ExtMinScript.php
controllers/
ExtMinScriptController.php
vendors/...
minify/...
最后,您可能会在路由规则或.htaccess/web服务器设置方面遇到问题。在第一种情况下,在config/main.php中,我使用了domain.com/site/parm1/parm2格式的所有URL,并在路由规则解决问题之前添加了以下内容:
'urlManager'=>array(
'urlFormat'=>'path',
编辑:我忘了这个:
config/main.php中的“controllerMap”部分应位于“components”之后
祝你好运 根据本文,您不需要定义由Yii预定义的ext名称空间。我确实尝试添加它,但它仍然产生相同的错误。请检查Yii::getPathOfAlias('ext.minScript.components')的结果,它似乎正在工作。我移动了controllerMap并启用了urlManager,这似乎起到了作用。谢谢
'urlManager'=>array(
'urlFormat'=>'path',