Ambiguous column name 'id' when sort attribute with relation

Hello everyone,

I have problem to sort attribute with relation model is show “Ambiguous column name ‘id’” .

I want to sort id of working model.




 $query = Model::find()->alias('t');

        

        $dataProvider = new ActiveDataProvider([

            'query' => $query,

            

        ]);

        $dataProvider->sort->defaultOrder = ['id' => SORT_DESC];

        

        $this->load($params);

        

        $query->joinWith([

            'relation1 AS r1',

            'relation2 AS r2'

        ]);



I try




['id' => SORT_DESC]; //not working

['t.id' => SORT_DESC]; //not working



how to? help me please…

Try this




$query = Model::find();

        

$dataProvider = new ActiveDataProvider([

	'query' => $query,

	

]);

$dataProvider->sort->defaultOrder = [Model::::tableName().'id' => SORT_DESC];


$this->load($params);


$query->joinWith([

	'relation1 AS r1',

	'relation2 AS r2'

]);

I try




$dataProvider->sort->defaultOrder = [Model::tableName().'.id' => SORT_DESC];



It still exception




Undefined index: table.id



What is your model name?

Please replace Model with your Model class name

Yes i try but it still exception

i used gridview with filter.

i’m not sure what is happen?

I used MS SQL Database.