laravel

Laravel Pagination

Laravel Pagination
La pagination est utilisée pour afficher plusieurs enregistrements à la fois en divisant les données en plusieurs pages pour les rendre lisibles. L'utilisation de la pagination dans Laravel est très simple car cette fonctionnalité est intégrée à Eloquent ORM et à un générateur de requêtes. La limite et l'offset des paginations sont calculés automatiquement dans Laravel. le paginer() et relier() les méthodes sont utilisées pour implémenter la pagination dans Laravel. Ce tutoriel vous montre comment appliquer la pagination dans les projets Laravel.

Conditions préalables

Avant de commencer ce didacticiel, vous devez effectuer les tâches suivantes qui ne sont pas couvertes dans ce didacticiel.

Créer une structure de table à l'aide de la migration

Ici le étudiants la table sera créée en utilisant la migration pour appliquer la pagination. Exécutez la commande suivante pour créer le fichier de migration pour le étudiants tableau. Si la commande s'exécute avec succès, elle créera un fichier de migration sous le /base de données/migration dossier.

$ php artisan make:migration create_students_table -create=students

Allez dans le dossier et ouvrez le fichier de migration. Modifier le en haut() méthode avec le code suivant pour définir la structure de la étudiants tableau. Le tableau contiendra 7 champs. le identifiant le champ sera la clé primaire et le champ d'auto-incrémentation. le std_id, std_name, std_email, et std_mobile les champs contiendront des données de chaîne. Les deux derniers champs stockeront l'insertion et mettront à jour l'heure de l'enregistrement.

fonction publique up()

Schema::create('students', function (Blueprint $table)
$table->id();
$table->string('std_id');
$table->string('std_name');
$table->string('std_email')->unique();
$table->string('std_mobile');
$table->timestamps();
);

Exécutez la commande suivante pour créer la table dans la base de données.

$ php artisan migrer

Si la table est créée avec succès, vous obtiendrez la structure de table suivante.

Créer un modèle

Exécutez la commande suivante depuis le terminal pour créer un modèle nommé Élève pour la table des étudiants. Cela créera un Élève.php en dessous de l'application dossier.

$ php artisan make:model Student

Ouvrez le Élève.php modelez et modifiez le fichier avec le code suivant. Ici, $ remplissable est déclaré pour définir quels champs de la étudiants le tableau est obligatoire. Ainsi, lorsque les données sont insérées, le std_id, std_name, std_email, et std_mobile les champs ne peuvent pas rester vides.

application d'espace de noms ;
utilisez Illuminate\Database\Eloquent\Model ;
classe L'étudiant étend le modèle

protégé $ remplissable = [
'std_id',
'std_name',
'std_email',
'std_mobile',
] ;

Générer de fausses données

Un grand nombre d'enregistrements sera nécessaire pour stocker dans la table des étudiants pour afficher correctement la tâche de pagination. Ici le Faux le service est utilisé dans le Semoir de base de données classe pour insérer rapidement un grand nombre de faux enregistrements dans la table des étudiants à des fins de test. Ouvrez le Semoir de base de données.php fichier de l'emplacement /base de données/semence/. Modifiez le fichier avec le code suivant. Ici, un objet de la Faux la classe est créée pour générer de fausses données. le pour chaque boucle est utilisée pour insérer 100 faux enregistrements dans le étudiants tableau. Un nombre aléatoire à 5 chiffres sera généré pour le id_std domaine. Un faux nom, un faux e-mail et un faux numéro de téléphone seront générés pour le nom_std, std_email, et std_mobile champs, respectivement.

utilisez Illuminate\Database\Seeder ;
// Importer la façade DB et le service Faker
utilisez Illuminate\Support\Facades\DB ;
utilisez Faker\Factory comme Faker ;
la classe DatabaseSeeder étend Seeder

/**
* Seed la base de données de l'application.
*
* @retour nul
*/
fonction publique run()

$faker = Faker::create();
foreach (plage (1 100) en tant que $index)
DB::table('étudiants')->insérer([
'std_id' => $faker->randomNumber($nbDigits = 5) ,
'std_name' => $faker->nom,
'std_email' => $faker->email,
'std_mobile' => $faker->phoneNumber,
]);


Exécutez la commande suivante à partir du terminal pour insérer 100 faux enregistrements dans le étudiants table utilisant l'amorçage de base de données.

$ php artisan db:seed

Ouvrez la table des étudiants pour vérifier si les enregistrements sont insérés dans la table. Vous obtiendrez une sortie similaire si l'amorçage de la base de données est effectué avec succès.

Créer un contrôleur pour lire les données

Exécutez la commande suivante depuis le terminal pour créer un contrôleur nommé ÉtudiantContrôleur.

$ php artisan make:controller StudentController

Ouvrez le contrôleur et remplacez le code par le code suivant. Ici le paginer() la fonction est appelée avec la valeur d'argument 10 pour afficher 10 enregistrements sur chaque page. Il y a 100 enregistrements dans la table des étudiants. Ainsi, des liens de 10 pages seront créés dans le fichier de vue pour naviguer dans les autres enregistrements.

espace de noms App\Http\Controllers ;
utilisez App\Étudiant ;
utilisez Illuminate\Http\Request ;
la classe StudentController étend le contrôleur

index de fonction publique ()
$students = Student::paginate(10);
return view('étudiants', compact('étudiants'));

Créer une vue pour afficher les données

Créer un fichier de vue nommé étudiants.lame.php avec le code suivant. Ici, les registres du étudiants le tableau sera affiché sous forme de tableau. le relier() la fonction est appelée à la fin de la balise table pour afficher la barre de pagination à l'aide de bootstrap.






Démo de pagination Laravel





Liste des étudiants à l'aide de la pagination













@foreach($students as $data)






@endforeach

identifiantNomE-mailNon mobile.
$data->std_id $data->std_name $data->std_email $data->std_mobile


!! $étudiants->liens() !!



Créer une route pour le contrôleur

Ouvrez le la toile.php et ajoutez la route suivante pour appeler le indice() méthode de ÉtudiantContrôleur lorsque l'utilisateur tape 'étudiants' après l'URL de base.

Route::get('students', '[email protected]');

Maintenant, ouvrez l'URL suivante à partir du navigateur pour afficher la sortie de la vue.

http://localhost/laravelpro/public/students

Vous obtiendrez une sortie similaire si la route fonctionne correctement. L'image ci-dessous affiche les 10 premiers enregistrements de la étudiants tableau.

Pour afficher les 10 derniers enregistrements, appuyez sur le lien '10' de la barre de pagination. Il affichera une sortie similaire.

Didacticiel vidéo

Conclusion

Le framework Laravel rend la tâche de pagination plus facile que dans de nombreuses autres applications PHP. Ce tutoriel vous a montré comment implémenter la pagination avec bootstrap dans Laravel en utilisant de fausses données pour un exemple. Si vous êtes un nouvel utilisateur de Laravel et que vous souhaitez savoir comment implémenter la pagination dans votre projet, alors ce tutoriel devrait vous aider à apprendre comment le faire.

Meilleurs jeux de ligne de commande pour Linux
La ligne de commande n'est pas seulement votre plus grand allié lorsque vous utilisez Linux, elle peut également être une source de divertissement car...
Meilleures applications de mappage de manette de jeu pour Linux
Si vous aimez jouer à des jeux sur Linux avec une manette de jeu au lieu d'un système de saisie clavier et souris typique, il existe des applications ...
Outils utiles pour les joueurs Linux
Si vous aimez jouer à des jeux sur Linux, il est probable que vous ayez utilisé des applications et des utilitaires comme Wine, Lutris et OBS Studio p...