[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)

Paginação não funcionando quando usa o search -LARAFOOD - AULA: 07 - FILTRAR PERFIS NO LARAFOOD

[Concluído]

Moacir de Oliveira
Criador Moacir de Oliveira 01/09/2021

Boa noite;

 

Preciso de uma ajuda.

 

A paginação não esta funcionando quando coloco o filtro com numero de paginas : paginate(1). Se não colocar funciona normal. Testei tambem com o que vc disponibilizou no github e não funcionou.

 

 

 

 

   public function search(Request $request)

    {

        $filters = $request->only('filter');

        $profiles = $this->repository

                            ->where(function($query) use ($request) {

                                if ($request->filter) {

                                    $query->where('nome', 'LIKE', "%{$request->filter}%");

                                    $query->orWhere('description', 'LIKE', "%{$request->filter}%");

                                }

                            })->paginate(1);

         return view('admin.pages.profiles.index', compact('profiles', 'filters'));

    }

 

 

 @if (isset($filters))

                {!! $profiles->appends($filters)->links() !!}

            @else

                {{!! $profiles->links() !!}}

            @endif

 

 

Desde de ja agrdeço pela atenção;

 

Moacir de Oliveira

Manager Carlos Ferreira 01/09/2021

Olá, Moacir!
Tudo bem?

Qual está sendo o erro amigo?
Me passa mais detalhes por favor: https://pt-br.imgbb.com/

Está desconderando o método paginate(), tanto faz trocar ele pelo get() o resultado está sendo o mesmo? Isso mesmo?

Carlos Ferreira
Criador Moacir de Oliveira 01/09/2021

Ola

Carlos;

Estou querendo usar o paginate assim:  paginate(1) e não funciona e quando uso assim funciona paginate().

Não quero usar o paginate padrao do laravel que é 15 registros 

O projeto esta no github : https://github.com/moacirx/larafood

No controller larafood/app/Http/Controllers/Admin/ACL/ProfileController.php no metodo search:

se eu coloco assim não funciona : https://ibb.co/DtFtyfG

se eu coloco assim funciona : https://ibb.co/w6bXYLp

 

Desde de já agradeço pela atenção; 

Moacir de Oliveira
Manager Carlos Ferreira 01/09/2021

O código está correto amigo (https://laravel.com/docs/8.x/pagination#paginating-eloquent-results)

O que acontece quando passa que quer apenas um registro por página? Qual o erro?
Continua com os 15 default, isso mesmo?

Carlos Ferreira
Criador Moacir de Oliveira 01/09/2021

Ola

Carlos;

O erro esta acontecendo no filtro com o paginate (hj pude constatar melhor com 20 registros).

O erro acontece com paginate somente usando o filtro  assim : paginate() e assim paginate(3)

Fiz um video para demonstrar o erro : https://www.youtube.com/watch?v=rPdk0dKHFAo

Testei em varios navegadores 

O projeto esta no github em : https://github.com/moacirx/larafood

No controller larafood/app/Http/Controllers/Admin/ACL/ProfileController.php no metodo search:

 

Novamente agradeço pela atenção;

 

Moacir de Oliveira

 

 

Moacir de Oliveira
Criador Moacir de Oliveira 01/09/2021

Ola

Carlos

 

Resolvido o problema.

O problema esta nas rotas onde coloquei o search após o resources do Profiles.

Erro meu. preciso prestar mais atenção.

Agradeço pela atenção.

Moacir

Moacir de Oliveira
Manager Carlos Ferreira 01/09/2021

Maravilha amigo, parabéns!

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!