2017-06-20 8 views
1

yii2フレームワークを使用してウェブサイトを作成しました。また、私はgii発電機を私の荒れ果てたものに使用しました。今、私は拡張kartik gridviewをインストールしました。今、私はkartikGridviewの中にいて、if else文を作成したいのですが、エラーが出ます。はい、私はそれを行うことができますが、kartikのグリッドビューの外側にあります。どんな提案? これは私のインデックス-GridViewのです:Yii2 dataGridビュー内にelse文を挿入する

<?= GridView::widget([ 
'id'=>'kv-grid-demo', 
'dataProvider'=>$dataProvider, 
'filterModel'=>$searchModel, 
'columns'=> [ 
     // ['class' => 'yii\grid\SerialColumn'], 
     // 'report_id', 
     'reference_no', 
     'subject', 
      [ 
       'attribute' => 'doc_date', 
       'filter'=>DatePicker::widget([ 
       'model' => $searchModel, 
       'attribute' => 'doc_date', 
       'removeButton' => false, 
       'pluginOptions' => [ 
        'autoclose'=>true, 
        'format' => 'yyyy-mm-dd', 
       ], 
       ]) 
      ], 

      [ 
       'attribute' => 'for', 
       'value' => 'namefor.fullName', 
      ], 
      [ 
       'attribute' => 'from', 
       'value' => 'namefrom.fullName', 
      ], 
      [ 
      'attribute' => 'drawer_id', 

      ], 
      'user_id', 
      'doc_name', 
     // 'doc_file', 
    [ 
    'class' => 'yii\grid\ActionColumn', 

    ], 
    ], 
'containerOptions'=>['style'=>'overflow: auto'], // only set when $responsive = false 
'headerRowOptions'=>['class'=>'kartik-sheet-style'], 
'filterRowOptions'=>['class'=>'kartik-sheet-style'], 
'pjax'=>true, // pjax is set to always true for this demo 
'panel' => [ 
'type' => GridView::TYPE_PRIMARY, 
'heading' => '<h3 class="panel-title"><i class="fa fa-files-o"></i> Documents</h3>', 
'responsive'=>true, 
'hover'=>true, 
// 'after' => true, 
// 'showFooter' => true, 
'showFooter' => true, 
], 
// set your toolbar 

'toolbar'=> [ 

    // Html::button('<i class="glyphicon glyphicon-plus"></i>', ['type'=>'button', 'title'=>Yii::t('kvgrid', 'Add Book'), 'class'=>'btn btn-success']) . ' '. 
    '{export}', 
    '{toggleData}', 
], 

// set export properties 
'export'=>[ 
    'fontAwesome'=>true 
], 
'exportConfig' => [ 
    GridView::PDF => [ 
'filename' => 'Documents', 
'config' => [ 
    'methods' => [ 
    'SetHeader' => [ 
     ['odd' => $pdfHeader, 'even' => $pdfHeader] 
    ], 
    'SetFooter' => [ 
     ['odd' => $pdfFooter, 'even' => $pdfFooter] 
    ], 
    ], 
    'options' => [ 
    'title' => 'Documents', 
    'subject' => 'Documents', 
    'keywords' => 'pdf, Documents, export, other, keywords, here' 
    ], 
] 

この場合、他のコードを挿入する方法は?

<?php 
    if(Yii::$app->user->identity->isUser()) 
    { 
    }else{ ?> 
      <p> 
      <?=Html::a('<i class="fa fa-plus"></i>&nbsp;Create',['create'],['class' => 'btn btn-success']) ?> 
      </p> 
     <?php } ?> 

この行には?

'toolbar'=> [ 

    '{export}', 
    '{toggleData}', 
], 

答えて

0

事前$toolbar配列の作成:

$toolbar = []; 
// Add dynamic values 
if (!Yii::$app->user->identity->isUser()) { 
    $toolbar[] = '<p>' . Html::a('<i class="fa fa-plus"></i>&nbsp;Create', ['create'], ['class' => 'btn btn-success']) . '</p>'; 
} 
// Add permanent values 
$toolbar = array_merge($toolbar, [ 
    '{export}', 
    '{toggleData}', 
]); 

GridViewtoolbarオプションに渡し:あなたはとても素晴らしいです:)助けを

<?= GridView::widget([ 
    // Other options 
    'toolbar' => $toolbar, 
    // Other options 
]) ?> 
+1

感謝を。それは動作します:D –

関連する問題