簡體   English   中英

如何顯示名稱而不是ID-GridView Yii2

[英]How do I display the name instead of ID - GridView Yii2

在我的_form.php中,我為類別創建了一個依賴下拉列表。 在index.php的GridView中選擇一個類別和一個子類別后,它將顯示該類別和子類別的ID。 如何顯示category_name和sub_category名稱而不是ID

<?= $form->field($model, 'category_id')->dropDownlist(
                ArrayHelper::map(Category::find()->all(), 'id', 'category_name'),
                [
                    'prompt' => 'Select Category',
                    'onchange' =>'
                    $.post( "index.php?r=sub-cat/lists&id='.'"+$(this).val(), function( data ) {
                    $( "select#tickets-sub_cat_id" ).html( data );
                    });'

                    ]
); ?>

<?= $form->field($model, 'sub_cat_id')->dropDownlist(
                ArrayHelper::map(SubCat::find()->all(), 'id', 'sub_category'),
                [
                    'prompt' => 'Select Sub Category',

                ]
); ?>

GridView代碼:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'rowOptions' => function($model) {

        if($model->status == 'On Going')
        {
            return ['class' => 'danger'];
        } else if($model->status == 'Done') {

            return ['class' => 'success'];
        } 
    },
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],

    //   'id',
         'category_id',
         'sub_cat_id',
    //   'request_title',
        'status',
         [
            'attribute' => 'time_start',
            'value' => 'time_start',
            'filter' => DatePicker::widget([
                'model' => $searchModel, 
                'attribute' => 'time_start',
                'pluginOptions' => [
                    'autoclose' => true,
                    'format' => 'yyyy-m-dd',
                    'todayHighlight' => true
                ]
                ]),
        ],
        'time_end',
        // 'details',
        // 'room_no',
        // 'employee_id',
          'room_no',

        ['class' => 'yii\grid\ActionColumn'],

我的模特

public function getCategory0()
{
    return $this->hasOne(Category::className(), ['id' => 'category_id']);
}

public function getSubCat()
{
    return $this->hasOne(SubCat::className(), ['id' => 'sub_cat_id']);
}

假設您的模型具有適當的關系(例如“ getCategory”),則可以將網格列定義為

'category.category_name'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM