尝试安装邮箱yii扩展,按照安装说明操作,但收到错误。不知道如何解决。这是指向http://www.yiiframework.com/extension/mailbox/
的链接这是错误跟踪:
Alias "mailbox.MailboxModule" is invalid. Make sure it points to an existing PHP file and the file is readable.
Z:\home\localhost\www\Kare2Match\framework\YiiBase.php(316)
304 if($isClass && (class_exists($className,false) || interface_exists($className,false)))
305 return self::$_imports[$alias]=$className;
306
307 if(($path=self::getPathOfAlias($alias))!==false)
308 {
309 if($isClass)
310 {
311 if($forceInclude)
312 {
313 if(is_file($path.'.php'))
314 require($path.'.php');
315 else
316 throw new CException(Yii::t('yii','Alias "{alias}" is invalid. Make sure it points to an existing PHP file and the file is readable.',array('{alias}'=>$alias)));
317 self::$_imports[$alias]=$className;
318 }
319 else
320 self::$classMap[$className]=$path.'.php';
321 return $className;
322 }
323 else // a directory
324 {
325 if(self::$_includePaths===null)
326 {
327 self::$_includePaths=array_unique(explode(PATH_SEPARATOR,get_include_path()));
328 if(($pos=array_search('.',self::$_includePaths,true))!==false)
+ Z:\home\localhost\www\Kare2Match\framework\YiiBase.php(196): YiiBase::import("mailbox.MailboxModule", true)
+ Z:\home\localhost\www\Kare2Match\framework\base\CModule.php(282): YiiBase::createComponent("mailbox.MailboxModule", "mailbox", null, array("userClass" => "PersonAbstract", "userIdColumn" => "k2m_internal_id", "usernameColumn" => "nickname"))
+ Z:\home\localhost\www\Kare2Match\framework\web\CWebApplication.php(337): CModule->getModule("mailbox")
+ Z:\home\localhost\www\Kare2Match\framework\web\CWebApplication.php(276): CWebApplication->createController("mailbox")
+ Z:\home\localhost\www\Kare2Match\framework\web\CWebApplication.php(141): CWebApplication->runController("mailbox")
需要帮助。
答案 0 :(得分:0)
这很难提供帮助,因为解决方案实际上是在输出中提供的:“确保它指向现有的PHP文件并且文件是可读的。”
所以首先检查它的位置是别名“mailbox.MailboxModule”,它指向哪里?是现有的PHP文件吗?如果是,那么文件的权限是否允许Web服务器读取它?
要查找别名,请尝试通过代码进行文本搜索。要查找文件的权限,请进入终端并执行ls /path/to/theFile.php
(在Mac或Linux上... Windows,我不知道)如果您正在通过FTP工作,您通常可以右键单击文件并获取上下文菜单以查找有关文件权限的更多信息。
了解文件权限read this.
答案 1 :(得分:0)
嘿,只需添加'课程'物业到模块'邮箱'在/protected/config/main.php中,如下所示:
'modules' => array(
'mailbox'=>
array(
'class' => 'application.extensions.mailbox.MailboxModule',
..............
..............
'userClass' => 'User',
'userIdColumn' => 'id',
'usernameColumn' => 'username',
);
如果您觉得这个答案很有帮助,请为其他人投票,以便轻松搞定。
答案 2 :(得分:0)
这是另一种解决方案:
我认为,您已将“邮箱”扩展名放在/ protected / extensions /中。请将'mailbox'扩展名放在'/ protected / modules'中。它解决了你的问题。