我有一个使用yii框架的网站。
Yii Version: 1.1.14
Php版本:5.4以上
我试图从以下位置安装一个论坛模块
http://www.yiiframework.com/extension/bbii我在main.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'=>'info@site.com',
),
);
你缺少指引框架打开模块的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管理