Yii with bootstrap extension,Alias “bootstrap.widg

2019-08-09 08:27发布

I am trying to use bootstrap extension with yii but I keep getting the error mentioned in the title,i double checked my configuration file but I dont know where I am doing it wrong. Here is my config/main.php

    <?php

// uncomment the following to define a path alias
// Yii::setPathOfAlias('local','path/to/local-folder');

// This is the main Web application configuration. Any writable
// CWebApplication properties can be configured here.
return array(
        'language'=>'en_us',
        'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
        'name'=>'CODEPAC',

        // preloading 'bootstrap,log' component
        'preload'=>array('bootstrap','log',),

        // autoloading model and component classes
        'import'=>array(
                'application.models.*',
                'application.components.*',

        ),

        'modules'=>array(
                // uncomment the following to enable the Gii tool
                'user'=>array(
                'debug'=>false,
                'userTable'=>'user',
                'translationTable'=>'translation',
                'mailer'=>'PHPMailer',
                'facebookConfig'=>array(
                        'appId'=>'12345',
                        'secret'=>'secret',
                        'domain'=>'localhost',
                        'status'=>true,
                        'xfbml'=>true,
                        'cookie'=>true,
                        'lang'=>'en_US',)
                ),
                 'avatar'=>array(),

                'profile' => array(
                'privacySettingTable' => 'privacysetting',
                'profileFieldTable' => 'profile_field',
                'profileTable' => 'profile',
                'profileCommentTable' => 'profile_comment',
                'profileVisitTable' => 'profile_visit',
                 ),
                 'role' => array(
                'roleTable' => 'role',
                'userRoleTable' => 'user_role',
                'actionTable' => 'action',
                'permissionTable' => 'permission',
                 ),

                'registration' => array(
                 ),


                'gii'=>array(
                        'class'=>'system.gii.GiiModule',
                        'password'=>'password',
                        // If removed, Gii defaults to localhost only. Edit carefully to taste.
                        'ipFilters'=>array('127.0.0.1','::1'),
                        'generatorPaths'=>array('bootstrap.gii',),
                ),

        ),

        // application components
        'components'=>array(
                'bootstrap'=>array(
                'class'=>'ext.bootstrap.components.Bootstrap',),
                'session'=>array(
                'sessionName'=>'SiteSession',
                'class'=>'CHttpSession',
'autoStart'=>true,
                ),
                 'cache'=>array('class'=>'system.caching.CFileCache'),
                        'user'=>array(
                        'class'=>'application.modules.user.components.YumWebUser',
                        // enable cookie-based authentication
                        'allowAutoLogin'=>true,
                         'loginUrl'=>array('//user/user/login'),
                ),
                // uncomment the following to enable URLs in path-format

                'urlManager'=>array(
                        'urlFormat'=>'path',
                        /*'rules'=>array(
                                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
                        ),*/
                ),
                /*
                'db'=>array(
                        'connectionString' => 'sqlite:'.dirname(__FILE__).'/../data/testdrive.db',
                ),
                // uncomment the following to use a MySQL database
                */


                'db'=>array(
                        'connectionString' => 'mysql:host=localhost;dbname=myDb',
                        'emulatePrepare' => true,
                        'username' => 'myDbUsername',
                        'password' => 'myDbPassword',
                        'charset' => 'utf8',
                        'tablePrefix'=>'',
                ),

                'errorHandler'=>array(
                        // use 'site/error' action to display errors

'errorAction'=>'site/error',
        ),
                'log'=>array(
                        'class'=>'CLogRouter',
                        'routes'=>array(
                                array(
                                        'class'=>'CFileLogRoute',
                                        'levels'=>'error, warning',
                                ),
                                // uncomment the following to show log messages on web pages
                                /*
                                array(
                                        'class'=>'CWebLogRoute',
                                ),
                                */
                        ),
                ),
        ),

        // application-level parameters that can be accessed
        // using Yii::app()->params['paramName']
        'params'=>array(
                // this is used in contact page
                'adminEmail'=>'example@example.com',
        ),
        'import'=>array('application.modules.user.models.*',
        'application.models.*',
        'application.components.*',),
);

4条回答
戒情不戒烟
2楼-- · 2019-08-09 08:43

Yii-Bootstrap is no longer preloaded, so now must use path alias. Do this. Download the lastest version of yii-bootstrap. In the first line of your main.php config paste:

Yii::setPathOfAlias('bootstrap', dirname(__FILE__).'/../extensions/bootstrap');

And configure the extension like this:

'components'=>array(
        [...]
    'bootstrap' => array(
                //'class' => 'ext.bootstrap.components.Bootstrap'),
                'class'=>'bootstrap.components.Bootstrap'),

And you are done.

For more references, read this: http://www.cniska.net/yii-bootstrap/setup.html

查看更多
Anthone
3楼-- · 2019-08-09 08:43

I ran into this on my production server even though it worked fine locally.

The solution was to grant apache ownership to the yii installation:

sudo chown www-data:www-data -R /var/www/yourapp

previously ownership was root and apache couldn't see the files

查看更多
趁早两清
4楼-- · 2019-08-09 08:50

I was having the same problem. I granted full(777) permission to the extension folder.

Try it.

查看更多
来,给爷笑一个
5楼-- · 2019-08-09 08:53

Make sure you assign [read] access permission to extensions/bootstrap that you uncompressed.

If you are on Mac / Linux, execute:

chmod 755 bootstrap

On windows, right click on the folder, and assign read access to Apache's account. Sometimes assigning read access to "Everyone" is acceptable too (depending if you care about security or not, though).

查看更多
登录 后发表回答