【问题标题】:Yii2 GridView Column Attribute ValueYii2 GridView 列属性值
【发布时间】:2018-02-09 07:00:18
【问题描述】:

我有两种类型的选择(radioList 和 dropDownList),如下所示,我如何查看 STRING 的值而不是 INT 的值?我应该填写什么值?

我的结果是未定义变量:模型

谢谢你

 Vitamin | Type

 (A | Tablet) 

 (**NOT** 0 | 2)

我的 _form.php

 <?= $form->field($model, 'vitamin')
 ->radioList(array(0=>'A', 1=>'B', 2=>'C'))
 ->label('Choose Vitamin') 
 ?>


 <?= $form->field($model, 'type')
 ->dropDownList(
 ['1' => 'liquid', '2' => 'Tablet', '3' => 'Pills', ['prompt'=>'Choose Package']
 ); ?>

我的 index.php

 GridView::widget([
 'dataProvider' => $dataProvider,
 'filterModel' => $searchModel,
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],
        [
            'attribute' => 'vitamin', 
            'filter'=>array("0"=>"A","1"=>"B","2"=>"C"),
            'value' => $model->vitamin == 0 ? 'A' : $model->vitamin == 1 ? 'B' : 'C'
       ],
       [
            'attribute' => 'type',
            'filter'=>array("1"=>"Liquid","2"=>"Tablet","3"=>"Pills"),
            'value' => $model->type == 1 ? 'Liquid' : $model->type == 2 ? 'Vitamin' : 'Pills'
       ],

【问题讨论】:

  • 您从未选择过上一个答案并添加了一个新答案,我看到您有多个问题的答案被赞成,而且您从未费心选择其中任何一个,如果您不打算回答,为什么有人会回复您给他们一些帮助你的分数。
  • 如果我在问题论坛中冒犯了任何同事,我很抱歉,真的我不是这个意思,我不知道如何选择上一个答案,以及我必须在有人回复我之后做什么,真的很抱歉,希望所有同事能原谅我@MuhammadOmerAslam
  • 和 @MuhammadOmerAslam 先生,我非常感谢你提醒我在这个社区中应该表现什么,我对我对这个社区所做的一切感到遗憾,我希望我能向各位同事学习了很多,非常感谢
  • 这不是为了让你感到内疚,而是为了更好地回答你自己的问题,这将在很多方面帮助你,请参阅 here 并采取相应措施
  • 谢谢你@MuhammadOmerAslam,我读了它,非常感谢你帮助我

标签: gridview yii2


【解决方案1】:

我找到了答案

[
    'attribute' => 'vitamin', 
    'filter'=>array("0"=>"A","1"=>"B","2"=>"C"),
    'value' => function ($model) {
        return $model->vitamin == 0 ? 'A' : ($model->vitamin == 1 ? 'B' : 'C');
    }
],
[
    'attribute' => 'type',
    'filter'=>array("1"=>"Liquid","2"=>"Tablet","3"=>"Pills"),
    'value' => function ($model) {
         // Nested ternary expressions (deprecated since PHP 7.4)
         return $model->type == 1 ? 'Liquid' : ($model->type == 2 ? 'Vitamin' : 'Pills');
     }
],

【讨论】:

    猜你喜欢
    • 2017-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-05
    • 1970-01-01
    相关资源
    最近更新 更多