【问题标题】:Using property of parent class gives "unknown property" error in php (yii2)使用父类的属性在 php (yii2) 中给出“未知属性”错误
【发布时间】:2015-04-30 13:32:46
【问题描述】:

我正在使用 yii2 和 Kartik 的 yii2-grid gridview 扩展。我在GridView::widget 的初始化时得到了异常Setting unknown property: kartik\grid\GridView::autoIdPrefix。但是kartik\grid\GridView 的继承是yii\grid\GridView » yii\widgets\BaseListView » yii\base\Widget » yii\base\Component » yii\base\Objectyii\base\Widget 具有公共参数autoIdPrefix

我正在使用以下初始化:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'autoIdPrefix' => 'igl_' . $model->id,
    'showHeader' => false,
    'columns' => [
        [ 'attribute' => 'language' ],
        [
            'class' => 'kartik\grid\EditableColumn',
            'attribute' => 'name',
            'value' => 'name',
            'editableOptions' => [
                'formOptions' => [
                    'action' => \yii\helpers\Url::to(['/ingredient-group-lang'])
                ]
            ]

        ],
    ],
]); ?>

怎么了?

【问题讨论】:

    标签: php inheritance gridview properties yii2


    【解决方案1】:

    属性 $autoIdPrefix 是小部件类的静态属性,因此不会被子类继承。如果你需要改变widget的id我建议直接设置,所以

    <?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'id' => 'igl_' . $model->id,
    'showHeader' => false,
    'columns' => [
        [ 'attribute' => 'language' ],
        [
            'class' => 'kartik\grid\EditableColumn',
            'attribute' => 'name',
            'value' => 'name',
            'editableOptions' => [
                'formOptions' => [
                    'action' => \yii\helpers\Url::to(['/ingredient-group-lang'])
                ]
            ]
    
        ],
    ],
    

    ]); ?>

    【讨论】:

      猜你喜欢
      • 2016-04-25
      • 2021-02-11
      • 1970-01-01
      • 1970-01-01
      • 2014-08-15
      • 1970-01-01
      • 2012-09-08
      • 1970-01-01
      • 2023-03-18
      相关资源
      最近更新 更多