2016-12-09 2 views
0

Я использую шаблон Yii2 Advanced. Ниже приведен код для создания виджета Gridview на индексной странице.sort link исчезает при использовании тега 'value' в yii2 gridview

<?= GridView::widget([ 
     'dataProvider' => $dataProvider, 
     'filterModel' => $searchModel, 
     'columns' => [ 
      ['class' => 'yii\grid\SerialColumn'], 
      'invoice_id', 
      [ 
       'label'=> 'Customer', 
       'value' => function ($model) { 
        return ucfirst($model->customer->customer_name); 
       }, 
       'enableSorting'=> TRUE, 
      ], 
      'invoice_type', 
      'timestamp' => [ 
       'label' => 'Sale/Purchase Date', 
       'attribute' => 'timestamp', 
       'format' => ['date', 'php:y-m-d h:i:s A'], 
      ], 
      'payment_option', 
      ['class' => 'yii\grid\ActionColumn','template'=>'{view} {delete}'], 
     ], 
    ]); 
?> 

Проблема заключается в том, несмотря на использование «ярлык» и «enableSorting» для «CUSTOMER_NAME», когда я использую свойство «значение», ссылка Сортировка Исчезает. Как включить ссылку «Сортировка». Также добавление моментального снимка моего представления;

SNAPSHOT

После решения проблемы, когда я нажимаю ссылку сортировки, я получаю ниже ошибки.

enter image description here

ответ

0

Попробуйте изменить эту конфигурацию колонки, как это:

[ 
    'attribute' => 'customer.customer_name', 
    'label'=> 'Customer', 
    'value' => function ($model) { 
     return ucfirst($model->customer->customer_name); 
    }, 
], 
+0

Вы не поверите! Я попытался сразу после публикации этой проблемы. Он по-прежнему остается неизменным :( –

+3

Вам также может потребоваться установить атрибут 'sort'' dataProvider', который вы используете для Grid View. Проверьте это http://stackoverflow.com/questions/27936787/how-i-do -custom-yii2-gridview-sort - принятый ответ показывает, как установить атрибут 'sort' – sm1979

+0

^^ Именно это. – Bizley

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