5

This is my actual query -

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

'status' field is exist in user table. So I want to filter data by where status != 0 but it fails.

I tried this -

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)
        ]);

None of it works. please let me how its possible?

ankitr
  • 5,992
  • 7
  • 47
  • 66
Nisarg
  • 85
  • 1
  • 7

1 Answers1

3

You need change your $dataProvider code with this code.

$dataProvider = new ActiveDataProvider([
            'query' => UserProfile::find()->joinWith(['user(relation_name)'])->where(['<>','user.status',0])
        ]);
GAMITG
  • 3,810
  • 7
  • 32
  • 51