yii2 + ActiveDataProvider中的联接查询

Nis*_*arg 5 php yii2 yii2-user

这是我的实际查询-

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->with(['user'])
        ]);
Run Code Online (Sandbox Code Playgroud)

用户表中存在“ 状态 ”字段。所以我想按状态!= 0过滤数据,但是失败。

我试过了-

1个

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->with(['user'])->where('user.status !=',0)
        ]);
Run Code Online (Sandbox Code Playgroud)

2

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->with(['user'])->where('<>','user.status',0)
        ]);
Run Code Online (Sandbox Code Playgroud)

没有一个有效。请让我怎么可能?

GAM*_*ITG 3

您需要$dataProvider使用此代码更改您的代码。

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->joinWith(['user(relation_name)'])->where(['<>','user.status',0])
        ]);
Run Code Online (Sandbox Code Playgroud)