2014-09-23 3 views
0

Im new к этому, я загрузил Yii-Booster Widgets для использования TBRelationalColumn.Определить расширение Yii-Booster в файле конфигурации

Я скачал расширения из yiibooster.clevertech.biz yiibooster-4.0.1.zip файла и выбитые под

protected/extensions/booster 

Конфигурации защищаемой/конфигурация/local.php и main.php

<?php 
    Yii::setPathOfAlias('booster', dirname(__FILE__).'/../extensions/booster'); 
    Yii::setPathOfAlias('bootstrap', dirname(__FILE__).'/../extensions/bootstrap'); 
    return array(
     'components'=>array(
      'db' => array(    
      ), 
       'mongodb' => array(
      'class'   => 'EMongoDB',   
     ), 
      'booster'=>array(
       'class'=>'booster.components.Booster', 
       'coreCss' => true, 
       'responsiveCss' => true, 
       'yiiCss' => true, 

      ), 
      'bootstrap'=>array(    
       'class'=>'bootstrap.components.bootstrap', 
       'coreCss' => true, 
       'responsiveCss' => true, 
       'yiiCss' => true, 
      ), 

      'cache'=>array(
       'class' => 'CFileCache', 
      ), 
     ), 
    ); 

Когда Im с помощью этого виджета им получить структуру сетки, но JS Не Enable index.php

$this->widget('booster.widgets.TbExtendedGridView', array(
     'id' => 'invite-grid', 
     'type' => 'striped condensed', 
     'dataProvider' => $arrayDataProvider,  
     'columns' => array(
      'id', 
      'username', 
      'email', 
      array(
       'class' => 'booster.widgets.TbRelationalColumn', 
       'name' => 'test', 
       'value' => '"grid"', 
       'url' => $this->createUrl('site/relational'), 
       'afterAjaxUpdate' => 'js:function(tr,rowid,data){ 
bootbox.alert("I have afterAjax events too!<br/>This will only happen once for row with id: "+rowid); 
}' 
      ),       
      ) 
    )); 

Когда вы нажимаете на Grid, я не могу получить сообщение Alert. Пожалуйста, помогите мне решить эту проблему.

ответ

0

Вы не загрузите его. Если вы используете boostrap на всех страницах, поджать его от конфигурации,

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

    'preload'=>array(
     'log', 
     'bootstrap', //preload bootsrtap 
     ), 

В противном случае, вы можете добавить его отдельно для каждого контроллера, используя фильтр

public function filters() 
    { 
     return array(
      'accessControl', 
      array('ext.booster.filters.BootstrapFilter') //load bootstrap 
     ); 
+0

Да я уже пробовал это, но учитывая не work – Silviaa

+0

Проверьте консоль (chrome/ff) и посмотрите, есть ли у вас какие-либо странные js/сетевые ошибки – redGREENblue

Смежные вопросы