2014-05-21 36 views
1

我有一个由yii框架支持的网站。Yii模块不能在我的网站上工作

Yii的版本:1.1.14

PHP版本:5.4以上

我试图从以下位置安装一个论坛模块

http://www.yiiframework.com/extension/bbii

我增加了模块在主.php在自述文件中指定。但/论坛不工作,我尝试了一些其他模块,他们都没有在我的安装工作。我困在此刻,我试图谷歌,但它是一个独特的错误,我不知道如何调试它。请帮忙。谢谢

return array(
     'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..', 
     'name'=>'testapp', 
     'preload'=>array('log','bootstrap'), 
     'import'=>array(
      'application.models.*', 
      'application.components.*', 
      'application.vendor.*', 
      'application.controllers.NavSort*', 
      ), 
     'modules'=>array(
      'gii'=>array(
       'class'=>'system.gii.GiiModule', 
       'password'=>'123', 
       // If removed, Gii defaults to localhost only. Edit carefully to taste. 
       'ipFilters'=>array('127.0.0.1','::1'), 
       'generatorPaths' => array(
         'bootstrap.gii' 
        ), 
       ), 
      'forum'=>array(
       'class'=>'application.modules.bbii.BbiiModule', 
       'adminId'=>1, 
       'userClass'=>'User', 
       'userIdColumn'=>'id', 
       'userNameColumn'=>'username', 
       ), 
      ), 
     'homeUrl'=>array('site/login'), 
     // application components 
     'components'=>array(
      'bootstrap' => array(
       'class' => 'ext.yiibooster.components.Bootstrap', 
       ), 
      'user'=>array(
       // enable cookie-based authentication 
       'allowAutoLogin'=>true, 
       ),   
      'session'=>array(
       'autoStart'=>true, 
       'sessionName'=>'session', 
       'cookieMode' => 'only', 
       'timeout'=>86400, 
       ), 
      'urlManager'=>array(
       'urlFormat'=>'path', 
       'showScriptName'=>false, 
       //'urlSuffix'=>'.html', 
       'urlSuffix'=>'', 
       'class' => 'UrlManager', 
       'rules'=>array(
        '<controller:\w+>/<id:\d+>'=>'<controller>/view', 
        '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>', 
        '<controller:\w+>/<action:\w+>'=>'<controller>/<action>', 
        '<controller:[\w\-]+>/<action:[\w\-]+>' => '<controller>/<action>', 
        // defaults to a site page if not above 
        '<view:[a-zA-Z0-9-]+>/'=>'site/login', 
        ), 
       ), 
      'db'=>array(
       'connectionString' => 'pgsql:host=localhost;port=5432;dbname=testdb', 
       'emulatePrepare' => false, 
       'username' => 'postgres', 
       'password' => 'root', 
       //'tablePrefix'=>'', 
       'charset' => 'utf8', 
       ), 
      'errorHandler'=>array(
       'errorAction'=>'site/error', 
       ), 
      'log'=>array(
       'class'=>'CLogRouter', 
       'routes'=>array(
        array(
         'class'=>'CFileLogRoute', 
         'levels'=>'error, warning', 
         ), 
        ), 
       ), 
      ), 
     'params'=>array(
      // this is used in contact page 
      'adminEmail'=>'[email protected]', 
      ), 
     ); 

回答

4

您错过了将指导框架打开模块的URL规则。

:您可以使用通用的规则

'<module:\w+>/<controller:\w+>/<action:[\w-]+>' => '<module>/<controller>/<action>', 
'<module:\w+>/<controller:\w+>'     => '<module>/<controller>', 
'<module:\w+>'         => '<module>', 

或者,您可以创建特定的规则

'forum/<controller:\w+>/<action:[\w-]+>'  => 'forum/<controller>/<action>', 
'forum/<controller:\w+>'      => 'forum/<controller>', 
'forum'           => 'forum', 

不同的是,只有当与其他规则的通用规则相冲突,那么你应该使用更具体的。

例如,使GII在我的应用程序正常工作与我的多语言系统,我用下面的规则

'gii/<controller:\w+>/<action:[\w-]+>'   => 'gii/<controller>/<action>', 

请记住,它很重要,你是数组中的位置的URL规则。首先会匹配,会触发开启该特定动作。阅读更多关于URL Management

+0

通用规则像char一样工作。谢谢你的帮助 –

相关问题