5

这是我的实际查询-

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->with(['user'])
        ]);

状态”字段存在于用户表中。所以我想通过 where status != 0过滤数据,但它失败了。

我试过这个 -

1

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

2

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

它都不起作用。请让我怎么可能?

4

1 回答 1

3

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

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->joinWith(['user(relation_name)'])->where(['<>','user.status',0])
        ]);
于 2015-09-14T10:40:41.823 回答