web-dev-qa-db-fra.com

Yii2: Comment ajouter deux champs dans l'ordre par () de Find ()

Comment ajouter plus d'un champ pour trier dans la méthode find ()?

J'ai essayé comme ci-dessous

$model::find()->orderBy([['id_date' => SORT_DESC],['item_no'=>SORT_ASC]);

Mais il lance une erreur avec la requête. Orderby Query produite par yii2 est: ORDER BY 0, 1

12
Kumar V

Selon la documentation :

$model::find()->orderBy([
  'id_date' => SORT_DESC,
  'item_no'=>SORT_ASC
]);
35
Jurik

Vous avez une erreur de syntaxe dans le code suivant:

$model::find()->orderBy([['id_date' => SORT_DESC], ['item_no' => SORT_ASC]);

La bonne façon de procéder est la suivante:

$model::find()->orderBy(['id_date' => SORT_DESC, 'item_no' => SORT_ASC]);
1
Gullu Mutullu