Yii2 Gridview 表格显示数据

伊万·兰契奇

我的问题是下一个。我使用 Yii2 gridview 表和我在会话中记录的用户 ID。如果我使用 ID 为 2 的用户登录,我只想为 ID 为 2 的用户显示表中的数据。提前感谢您的回答。

<?= GridView::widget([
  'dataProvider' => $dataProvider,
  'filterModel' => $searchModel,
  'columns' => [
    ['class' => 'yii\grid\SerialColumn'],

    'company_name',
    'person_name',
    'company_address',
    'company_email:email',
    'meeting_date',
    'user_id',//external key
    'tel_fix',
    'tel_mob',

    ['class' => 'yii\grid\ActionColumn', 'template' => '{view} {update}'],
  ],
  'tableOptions' => ['class' => 'table table-striped table-bordered'],
]); ?>

这是我来自 PartnersController 的 actionIndex。

public function actionIndex()
    {
        $searchModel = new PartnersSearch();

        $dataProvider = $searchModel->search(Yii::$app->request->queryParams);

        return $this->render('index', [
            'searchModel' => $searchModel,
            'dataProvider' => $dataProvider,
        ]);
    }

我在哪里可以这样做?

非常感谢!但是在您的代码中,我只进行了一项更改,现在效果很好!

代替 :

$query->andFilterWhere ( [
        'user_partner_id' => $this->user_partner_id,
      ] );

我写 :

$query->andFilterWhere ( [
        'user_partner_id' => $_SESSION['sess_id_user'],
      ] );

无论如何,非常感谢!

阿克沙普乔希

如果您使用的是UserModel,只需将您的查询替换为SearchModel


     $query->andFilterWhere([ 
                'user_partner_id' => Yii::$app->user->identity->sess_id_user, 
            ]);

或者,如果您sess_id_user是主键UserModel


     $query->andFilterWhere([ 
                'user_partner_id' => Yii::$app->user->id, 
            ]);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章