2
votes

I receive this message when I try to install YiiStrap in Yii. I have followed the all steps from getyiistrap.com but I 've got this error:

Invalid Bootstrap path and CDN URL not set. Set vendor.twbs.bootstrap.dist alias or cdnUrl parameter in the configuration file

Any suggestions? I didn't use composer. I just downloaded the zip file.

Also, I am using Yii 1.1.16

My file main.php

return array(
    'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..',
    'name'=>'My Web Application',

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

     // path aliases
    'aliases' => array(
        'bootstrap' => realpath(__DIR__ . '/../extensions/bootstrap'), // change this if necessary
        'vendor.twbs.bootstrap.dist' => realpath(__DIR__ . '/../extensions/bootstrap'),
    ),

    // autoloading model and component classes
    'import'=>array(
        'application.models.*',
        'application.components.*',
        'bootstrap.helpers.*',
        'bootstrap.widgets.*',
        'bootstrap.behaviors.*',
    ),

    'modules'=>array(
        // uncomment the following to enable the Gii tool
        'gii'=>array(
            'class'=>'system.gii.GiiModule',
            'password'=>'Enter Your Password Here',
            // 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' => 'bootstrap.components.TbApi',   
        ),

        'user'=>array(
            // enable cookie-based authentication
            'allowAutoLogin'=>true,
        ),

        // 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>',
            ),
        ),


        // database settings are configured in database.php
        'db'=>require(dirname(__FILE__).'/database.php'),

        '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'=>'[email protected]',
    ),
);
2

2 Answers

0
votes

This is a old question, but i found a solution from https://github.com/crisu83/yiistrap/issues/263

@syntaxc say:

The problem for me was that I did not have Bootstrap installed! I found two solutions. 1) Use Bootstrap from a public CDN. ( Eg https://maxcdn.bootstrapcdn.com ) To set this up just ADD a single line in your config/main.php

'components'=>array(
          ...
          'bootstrap'=>array(
                         ...
                         'cdnUrl'=>"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/",
          ),
 ), 

2) You can host Bootstrap yourself. Download Bootstrap from getbootstrap.com Extract into /protected/vendor/twbs/bootstrap/dist

And if you choose the second solution, you should add alias to your config/main.php

'aliases' => array(
    ...
    'vendor.twbs.bootstrap.dist' => realpath(__DIR__.'/../vendor/twbs/bootstrap/dist'),
),
0
votes

If you have downloaded Yiistrapp according to "get started" you may still need to install the dependencies with composer. Check if the extension folder contains a composer.json but not a vendor folder. In that case just run the command line and run composer install on the extension path.