Förutsättningar
Innan du börjar denna handledning måste du slutföra följande uppgifter som inte omfattas av denna handledning.
- Installera ett nytt Laravel-projekt
- Gör databasanslutningen
Skapa en tabellstruktur med hjälp av migrering
Här, den studenter tabellen skapas med hjälp av migrering för att tillämpa paginering. Kör följande kommando för att skapa migreringsfilen för studenter tabell. Om kommandot körs framgångsrikt kommer det att skapa en migreringsfil under / databas / migration mapp.
$ php artisan make: migration create_students_table -create = studenterGå till mappen och öppna migreringsfilen. Ändra upp() metoden med följande kod för att definiera strukturen för studenter tabell. Tabellen innehåller sju fält. De id fältet kommer att vara den primära nyckeln och automatiskt ökande fält. De std_id, std_name, std_email, och std_mobile fält innehåller strängdata. De två sista fälten lagrar insättningen och uppdaterar tidpunkten för posten.
offentlig funktion upp ()Schema :: skapa ('studenter', funktion (Blueprint $ tabell)
$ tabell-> id ();
$ table-> sträng ('std_id');
$ table-> string ('std_name');
$ table-> string ('std_email') -> unik ();
$ table-> string ('std_mobile');
$ tabell-> tidsstämplar ();
);
Kör följande kommando för att skapa tabellen i databasen.
$ php hantverkare migrerarOm tabellen har skapats framgångsrikt får du följande tabellstruktur.
Skapa modell
Kör följande kommando från terminalen för att skapa en modell med namnet Studerande för studentbordet. Detta kommer att skapa en Studerande.php under appen mapp.
$ php hantverkare: modell StudentÖppna Studerande.php modellera och ändra filen med följande kod. Här, $ fyllbar förklaras för att definiera vilka fält i studenter är obligatoriska. Så när data infogas, kommer std_id, std_name, std_email, och std_mobile fält kan inte hållas tomma.
namnrymd-app;använd Illuminate \ Database \ Eloquent \ Model;
klass Student utökar modell
skyddad $ fyllbar = [
'std_id',
'std_name',
'std_email',
'std_mobile',
];
Skapa falska data
Ett stort antal poster kommer att krävas för att lagras i studenttabellen för att visa uppgiften att paginera ordentligt. Här, den Förfalskare tjänsten används i DatabaseSeeder klass för att snabbt infoga ett stort antal falska poster i studenttabellen för teständamål. Öppna DatabaseSeeder.php fil från platsen / databas / utsäde /. Ändra filen med följande kod. Här, ett objekt av Förfalskare klass skapas för att generera falska data. De för varje loop används för att infoga 100 falska poster i studenter tabell. Ett 5-siffrigt slumptal genereras för std_id fält. Ett falskt namn, falskt e-postmeddelande och falskt telefonnummer kommer att generera för std_name, std_email, och std_mobile fält.
använd Illuminate \ Database \ Seeder;// Importera DB-fasad och Faker-tjänst
använd Illuminate \ Support \ Facades \ DB;
använda Faker \ Factory som Faker;
klass DatabaseSeeder förlänger Seeder
/ **
* Seed applikationens databas.
*
* @return ogiltig
* /
offentlig funktionskörning ()
$ faker = Faker :: skapa ();
foreach (intervall (1100) som $ index)
DB :: tabell ('studenter') -> infoga ([
'std_id' => $ faker-> randomNumber ($ nbDigits = 5) ,
'std_name' => $ faker-> namn,
'std_email' => $ faker-> e-post,
'std_mobile' => $ faker-> phoneNumber,
]);
Kör följande kommando från terminalen för att infoga 100 falska poster i studenter tabell med hjälp av databassådd.
$ php hantverkare db: utsädeÖppna studenttabellen för att kontrollera om posterna är infogade i tabellen. Du kommer att få en liknande utdata om sådd av databasen lyckas.
Skapa en styrenhet för att läsa data
Kör följande kommando från terminalen för att skapa en controller som heter StudentController.
$ php hantverkare: controller StudentControllerÖppna styrenheten och byt ut koden med följande kod. Här, den paginera() funktionen kallas med argumentvärdet 10 för att visa 10 poster på varje sida. Det finns 100 poster i studenttabellen. Så, 10-sidiga länkar skapas i visningsfilen för att navigera i andra poster.
namnrymd App \ Http \ Controllers;använd App \ Student;
använd Illuminate \ Http \ Request;
klass StudentController utökar Controller
offentligt funktionsindex ()
$ studenter = Student :: paginate (10);
returvy ('studenter', kompakt ('studenter'));
Skapa vy för att visa data
Skapa en vyfil med namnet studenter.blad.php med följande kod. Här är register över studenter tabellen visas i tabellform. De länk() funktionen kallas i slutet av tabelltaggen för att visa pagineringsfältet med bootstrap.
Studenterlista med hjälp av Pagination
ID | namn | E-post | Mobilnummer. |
---|---|---|---|
$ data-> std_id | $ data-> std_name | $ data-> std_email | $ data-> std_mobile |
!! $ studenter-> länkar () !!
Skapa rutt för styrenheten
Öppna webb.php filen och lägg till följande rutt för att ringa upp index() metod av Studentkontroll när användaren skriver 'studenternas efter basadressen.
Rutt :: get ('students', '[email protected]');Öppna nu följande URL från webbläsaren för att visa utdata från vyn.
http: // localhost / laravelpro / public / studenter
Du får en liknande effekt om rutten fungerar som den ska. Bilden nedan visar de första 10 posterna av studenter tabell.
För att visa de senaste 10 posterna, tryck på länken '10' från sidfältet. Den visar en liknande utgång.
Videohandledning
Slutsats
Laravel-ramverket gör pagineringsuppgiften enklare än i många andra PHP-applikationer. Denna handledning visade dig hur du implementerar pagination med bootstrap i Laravel genom att använda falska data för ett exempel. Om du är en ny Laravel-användare och vill veta hur du implementerar pagination i ditt projekt, ska denna handledning hjälpa dig att lära dig hur du gör det.