Maison cadre php YII Comment trier les tables yii2.0

Comment trier les tables yii2.0

Dec 09, 2019 pm 01:37 PM
排序

Comment trier les tables yii2.0

Dans le développement actuel des projets Yii2.0, nous rencontrons souvent l'utilisation de la fonction de tri fournie avec Yii2.0.

Lors de l'affichage de plusieurs éléments de données, il est généralement nécessaire de trier les données en fonction des colonnes spécifiées par l'utilisateur. Yii utilise l'objet yiidataSort pour représenter des informations sur le schéma de tri. En particulier :

1. attributs précise les attributs selon lesquels les données sont triées. Un attribut peut être un simple attribut de modèle ou un attribut composite qui combine plusieurs attributs de modèle ou colonnes de base de données. Plus de détails sont donnés ci-dessous.

2.attributOrders donne le sens de tri actuellement défini pour chaque attribut.

3. commandes donne le sens de tri sous forme de colonnes de bas niveau.

Pour utiliser yiidataSort, vous devez d'abord déclarer quels attributs peuvent être triés. Obtenez ensuite les informations de tri actuellement définies à partir des attributsOrders ou des commandes, puis utilisez-les pour personnaliser les requêtes de données.

(Apprentissage recommandé : cadre yii )

Voici la méthode spécifique d'utilisation de la fonction de tri :

1. Définissez les règles de tri <.>

Faites attention à l'introduction de la classe Sort, par exemple : utilisez yiidataSort;

// 设置排序字段
        $sortObject = new Sort([
                &#39;sort&#39; => $sort,
                &#39;defaultOrder&#39; => [&#39;id&#39; => SORT_DESC],
                &#39;attributes&#39; => [
                        &#39;id&#39; => [
                                &#39;asc&#39; => [&#39;id&#39; => SORT_ASC],
                                &#39;desc&#39; => [&#39;id&#39; => SORT_DESC],
                        ],
                        &#39;user_name&#39; => [
                                &#39;asc&#39; => [&#39;ecs_users.user_name&#39; => SORT_ASC],
                                &#39;desc&#39; => [&#39;ecs_users.user_name&#39; => SORT_DESC],
                        ],
                        &#39;add_time&#39; => [
                                &#39;asc&#39; => [&#39;add_time&#39; => SORT_ASC],
                                &#39;desc&#39; => [&#39;add_time&#39; => SORT_DESC],
                        ],
                ],
        ]);
Copier après la connexion

2 Utilisez la fonction de pagination de Yii2.0 et ajoutez le tri

// 处理分页
        $queryClone = clone $query;
        $totalCount = $queryClone->count();
        $pages = new Pagination([&#39;defaultPageSize&#39;=>$rows,&#39;totalCount&#39;=>$totalCount,&#39;pageSizeLimit&#39;=>false]);
        $query = $query->offset($offset)
                       ->limit($pages->limit)
                       ->orderBy($sortObject->orders)
                       ->asArray()
                       ->all();
Copier après la connexion

3. Modifier le code sous-jacent du tri Yii2.0

Le code source correspondant sous-jacent : supplier/yiisoft/yii2.0/data/Sort.php

1 Ajouter un attribut à la classe Sort : public $sort;

2. Dans le code source approx. Ajoutez le code suivant à la ligne 249 : (implémentez post pour obtenir les paramètres de pagination)

  // get请求获取数组为空,则调用自定义属性sort。用于满足post获取后处理自定义参数
 if(!isset($params[$this->sortParam])){
    $params[$this->sortParam] = $this->sort;
  }
Copier après la connexion

3. Recevez les paramètres de pagination dans le contrôleur, comme suit :

$sort = $_POST[&#39;sort&#39;] ? strval($_POST[&#39;sort&#39;]) : &#39;id&#39;;
$sort = $_POST[&#39;order&#39;] == &#39;asc&#39; ? $sort : &#39;-&#39;.$sort;
Copier après la connexion

Remarque : L'identifiant dans Yii2.0 représente la valeur correcte en fonction de l'identifiant. Tri dans l'ordre, -id signifie trier dans l'ordre inverse par identifiant. C'est également la raison pour laquelle la déclaration 2 ci-dessus est traitée de cette manière.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Vous avez un jeu croisé?
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment trier les photos par date prise sous Windows 11/10 Comment trier les photos par date prise sous Windows 11/10 Feb 19, 2024 pm 08:45 PM

Cet article explique comment trier les images en fonction de la date de prise de vue dans Windows 11/10 et explique également ce qu'il faut faire si Windows ne trie pas les images par date. Dans les systèmes Windows, organiser correctement les photos est crucial pour faciliter la recherche des fichiers image. Les utilisateurs peuvent gérer des dossiers contenant des photos en fonction de différentes méthodes de tri telles que la date, la taille et le nom. De plus, vous pouvez définir l'ordre croissant ou décroissant selon vos besoins pour organiser les fichiers de manière plus flexible. Comment trier les photos par date de prise sous Windows 11/10 Pour trier les photos par date de prise sous Windows, procédez comme suit : Ouvrez Images, Bureau ou tout dossier dans lequel vous placez des photos. Dans le menu du ruban, cliquez sur

Comment trier les e-mails par expéditeur, sujet, date, catégorie, taille dans Outlook Comment trier les e-mails par expéditeur, sujet, date, catégorie, taille dans Outlook Feb 19, 2024 am 10:48 AM

Outlook propose de nombreux paramètres et fonctionnalités pour vous aider à gérer votre travail plus efficacement. L’une d’elles est l’option de tri qui vous permet de classer vos emails en fonction de vos besoins. Dans ce didacticiel, nous allons apprendre à utiliser la fonction de tri d'Outlook pour organiser les e-mails en fonction de critères tels que l'expéditeur, l'objet, la date, la catégorie ou la taille. Cela vous permettra de traiter et de trouver plus facilement des informations importantes, ce qui vous rendra plus productif. Microsoft Outlook est une application puissante qui facilite la gestion centralisée de vos plannings de messagerie et de calendrier. Vous pouvez facilement envoyer, recevoir et organiser des e-mails, tandis que la fonctionnalité de calendrier intégrée facilite le suivi de vos événements et rendez-vous à venir. Comment être dans Outloo

Filtrage et tri des données XML à l'aide de Python Filtrage et tri des données XML à l'aide de Python Aug 07, 2023 pm 04:17 PM

Implémentation du filtrage et du tri des données XML à l'aide de Python Introduction : XML est un format d'échange de données couramment utilisé qui stocke les données sous forme de balises et d'attributs. Lors du traitement de données XML, nous devons souvent filtrer et trier les données. Python fournit de nombreux outils et bibliothèques utiles pour traiter les données XML. Cet article explique comment utiliser Python pour filtrer et trier les données XML. Lecture du fichier XML Avant de commencer, nous devons lire le fichier XML. Python possède de nombreuses bibliothèques de traitement XML,

Développement PHP : Comment implémenter les fonctions de tri et de pagination des données des tables Développement PHP : Comment implémenter les fonctions de tri et de pagination des données des tables Sep 20, 2023 am 11:28 AM

Développement PHP : comment implémenter des fonctions de tri et de pagination des données de table Dans le développement Web, le traitement de grandes quantités de données est une tâche courante. Pour les tableaux devant afficher une grande quantité de données, il est généralement nécessaire de mettre en œuvre des fonctions de tri et de pagination des données pour offrir une bonne expérience utilisateur et optimiser les performances du système. Cet article explique comment utiliser PHP pour implémenter les fonctions de tri et de pagination des données de table et donne des exemples de code spécifiques. La fonction de tri implémente la fonction de tri dans le tableau, permettant aux utilisateurs de trier par ordre croissant ou décroissant selon différents champs. Ce qui suit est un formulaire de mise en œuvre

Comment la méthode Arrays.sort() en Java trie-t-elle les tableaux par comparateur personnalisé ? Comment la méthode Arrays.sort() en Java trie-t-elle les tableaux par comparateur personnalisé ? Nov 18, 2023 am 11:36 AM

Comment la méthode Arrays.sort() en Java trie-t-elle les tableaux par comparateur personnalisé ? En Java, la méthode Arrays.sort() est une méthode très utile pour trier les tableaux. Par défaut, cette méthode trie par ordre croissant. Mais parfois, nous devons trier le tableau selon nos propres règles définies. À ce stade, vous devez utiliser un comparateur personnalisé (Comparator). Un comparateur personnalisé est une classe qui implémente l'interface Comparator.

Programme C++ : réorganiser la position des mots par ordre alphabétique Programme C++ : réorganiser la position des mots par ordre alphabétique Sep 01, 2023 pm 11:37 PM

Dans ce problème, une chaîne est donnée en entrée et nous devons trier les mots apparaissant dans la chaîne par ordre lexicographique. Pour ce faire, nous attribuons un index commençant à 1 à chaque mot de la chaîne (séparés par des espaces) et obtenons le résultat sous forme d'index triés. String={"Hello","World"}"Hello"=1 "World"=2 Puisque les mots dans la chaîne d'entrée sont dans l'ordre lexicographique, la sortie imprimera "12". Examinons quelques scénarios d'entrée/résultat - en supposant que tous les mots de la chaîne d'entrée sont identiques, regardons les résultats - Entrée :{"hello","hello","hello"}Résultat : 3 Résultat obtenu

Comment trier les scores WPS Comment trier les scores WPS Mar 20, 2024 am 11:28 AM

Dans notre travail, nous utilisons souvent le logiciel wps. Il existe de nombreuses façons de traiter les données dans le logiciel wps, et les fonctions sont également très puissantes. Nous utilisons souvent des fonctions pour trouver des moyennes, des résumés, etc. des méthodes qui peuvent être utilisées pour les données statistiques ont été préparées pour tout le monde dans la bibliothèque du logiciel WPS. Ci-dessous, nous présenterons les étapes à suivre pour trier les scores dans WPS. Après avoir lu ceci, vous pourrez tirer les leçons de cette expérience. 1. Ouvrez d’abord le tableau qui doit être classé. Comme indiqué ci-dessous. 2. Entrez ensuite la formule =rank(B2, B2 : B5, 0) et assurez-vous de saisir 0. Comme indiqué ci-dessous. 3. Après avoir saisi la formule, appuyez sur la touche F4 du clavier de l'ordinateur. Cette étape consiste à changer la référence relative en référence absolue.

Comment optimiser les performances de tri des collections et de déduplication dans le développement Java Comment optimiser les performances de tri des collections et de déduplication dans le développement Java Jul 02, 2023 am 11:25 AM

Dans le développement Java, le tri des collections et la déduplication sont des exigences courantes. Cependant, les performances deviennent souvent un problème lorsqu’il s’agit de grandes collections de données. Cet article présentera quelques techniques d'optimisation pour aider à améliorer les performances du tri des collections et de la déduplication. 1. Utilisez des structures de données appropriées En Java, les structures de données les plus couramment utilisées sont ArrayList et HashSet. ArrayList convient aux situations où l'ordre des éléments doit être conservé, tandis que HashSet convient aux situations où la duplication doit être éliminée. Dans les scénarios de tri et de déduplication, nous pouvons utiliser

See all articles