Paginação de Laravel

Paginação de Laravel
A paginação é usada para exibir muitos registros de uma só vez, dividindo os dados em várias páginas para torná -los legíveis. Usar a paginação em Laravel é muito simples porque esse recurso é integrado ao eloqüente ORM e um construtor de consultas. O limite e o deslocamento das paginações são calculados automaticamente em Laravel. O paginar() e link() Métodos são usados ​​para implementar a paginação em Laravel. Este tutorial mostra como aplicar a paginação em projetos de Laravel.

Pré -requisitos

Antes de iniciar este tutorial, você deve concluir as seguintes tarefas que não são abordadas neste tutorial.

  • Instale um novo projeto de Laravel
  • Faça a conexão do banco de dados

Crie uma estrutura de tabela usando migração

Aqui o alunos A tabela será criada usando a migração para aplicar a paginação. Execute o seguinte comando para criar o arquivo de migração para o alunos mesa. Se o comando for executado com sucesso, ele criará um arquivo de migração sob o /banco de dados/migração pasta.

$ php artesan make: migration create_students_table -create = alunos

Vá para a pasta e abra o arquivo de migração. Modifique o acima() método com o seguinte código para definir a estrutura para o alunos mesa. A tabela conterá 7 campos. O eu ia O campo será a chave primária e o campo de incremento automático. O std_id, std_name, std_email, e std_mobile Os campos conterão dados de string. Os dois últimos campos armazenarão a inserção e atualizarão a hora do registro.

função pública up ()

Schema :: Create ('Alunos', função (Blueprint $ tabela)
$ tabela-> id ();
$ tabela-> string ('std_id');
$ tabela-> string ('std_name');
$ tabela-> string ('std_email')-> exclusivo ();
$ tabela-> string ('std_mobile');
$ tabela-> timestamps ();
);

Execute o seguinte comando para criar a tabela no banco de dados.

$ php artesan migrar

Se a tabela for criada com sucesso, você receberá a seguinte estrutura de tabela.

Criar modelo

Execute o seguinte comando do terminal para criar um modelo nomeado Estudante Para a mesa dos alunos. Isso criará um Estudante.php sob a aplicação pasta.

$ PHP Artisan Make: Model Student

Abra o Estudante.php Modele e modifique o arquivo com o seguinte código. Aqui, $ preenchível é declarado para definir quais campos do alunos A tabela é obrigatória. Então, quando os dados são inseridos, o std_id, std_name, std_email, e std_mobile Campos não podem ser mantidos vazios.

App de espaço para nome;
Use iluminado \ Database \ Eloquent \ Model;
estudante de aula estende modelo

$ preenchável protegido = [
'std_id',
'std_name',
'std_email',
'std_mobile',
];

Gerar dados falsos

Um grande número de registros será obrigado a armazenar na tabela dos alunos para mostrar a tarefa de paginação corretamente. Aqui o Faker O serviço é usado no Banco de dadoseseeder classe para inserir rapidamente um grande número de discos falsos na tabela de alunos para fins de teste. Abra o Banco de dadoseseeder.php arquivo do local /banco de dados/semente/. Modifique o arquivo com o seguinte código. Aqui, um objeto do Faker A classe é criada para gerar dados falsos. O para cada O loop é usado para inserir 100 discos falsos no alunos mesa. Um número aleatório de 5 dígitos será gerado para o std_id campo. Um nome falso, e -mail falso e número de telefone falso gerarão para o std_name, std_email, e std_mobile campos, respectivamente.

Use iluminado \ Database \ Seeder;
// Importar fachada de banco de dados e serviço de faker
use iluminado \ suporte \ fachadas \ db;
Use Faker \ Factory como faker;
Banco de dados de classe estende estende a semente

/**
* Semear o banco de dados do aplicativo.
*
* @return void
*/
função pública run ()

$ faker = faker :: create ();
foreach (intervalo (1.100) como $ index)
Db :: tabela ('alunos')-> inserir ([
'std_id' => $ faker-> RandomNumber ($ nbdigits = 5) ,
'std_name' => $ faker-> nome,
'std_email' => $ faker-> email,
'std_mobile' => $ faker-> foneNumber,
]);


Execute o seguinte comando do terminal para inserir 100 registros falsos no alunos tabela usando a semeadura de banco de dados.

$ php artesan db: semente

Abra a tabela de alunos para verificar se os registros são inseridos na tabela. Você obterá uma saída semelhante se a semeadura do banco de dados for feita com sucesso.

Crie um controlador para ler dados

Execute o seguinte comando do terminal para criar um controlador nomeado Studentcontroller.

$ php artesan make: controller studentcontroller

Abra o controlador e substitua o código pelo seguinte código. Aqui o paginar() A função é chamada com o valor do argumento 10 para exibir 10 registros em cada página. Existem 100 registros na tabela de alunos. Portanto, os links de 10 páginas serão criados no arquivo de exibição para navegar nos outros registros.

namespace app \ http \ controladores;
Use App \ Student;
use iluminado \ http \ request;
A classe StudentController estende o controlador

Public Function Index ()
$ estudantes = aluno :: paginate (10);
Visualização de retorno ('alunos', compacto ('alunos'));

Crie Visualização para exibir dados

Crie um arquivo de visualização chamado alunos.lâmina.php Com o seguinte código. Aqui, os registros do alunos A tabela será exibida em forma de tabular. O link() A função é chamada no final da tag da tabela para exibir a barra de paginação usando bootstrap.






Demonstração de paginação de Laravel





Lista de alunos usando a paginação













@foreach ($ estudantes como $ dados)






@endForEach

EU IANomeE-mailMobile não.
$ data-> std_id$ data-> std_name$ data-> std_email$ data-> std_mobile


!! $ estudantes-> links () !!



Crie rota para o controlador

Abra o rede.php Arquive e adicione a seguinte rota para ligar para o índice() método de Studentcontroller Quando os tipos de usuário 'estudantes Depois do URL base.

Rota :: get ('alunos', 'studentcontroller@index');

Agora, abra o seguinte URL do navegador para exibir a saída da visualização.

http: // localhost/laravelpro/público/estudantes

Você obterá uma saída semelhante se a rota funcionar corretamente. A imagem abaixo exibe os 10 primeiros registros do alunos mesa.

Para exibir os últimos 10 registros, pressione o link '10' da barra de paginação. Ele exibirá uma saída semelhante.

Vídeo tutorial

Conclusão

A estrutura do Laravel facilita a tarefa de paginação do que em muitos outros aplicativos PHP. Este tutorial mostrou como implementar a paginação com bootstrap em Laravel usando dados falsos para um exemplo. Se você é um novo usuário do Laravel e deseja saber como implementar a paginação em seu projeto, este tutorial deve ajudá -lo a aprender como fazê -lo.