Abstração paginate()
[Concluído]

Criador
FABIO PEREIRA DE LIMA
Não tenho experiência com o uso de outros ORM, fique com a seguinde dúvida:
usando o princípio da abstração em UserRepository:
public function paginate(int $page = 1): PaginationInterface
{
return new PaginationPresenter($this->model->paginate());
}
o que garante ao trocar o ORM que o parâmetro em PaginationPresenter será do tipo Illuminate\Pagination\LengthAwarePaginator ?
Manager
Carlos Ferreira
Olá, Fabio!
Tudo bem?
O método paginate() do ORM (Eloquent) sempre retorna um LengthAwarePaginator, tem um contrato (interface) que garante isso.
Se um dia mudar, tranquilo, basta mudar o nosso presenter e tudo certo. :-)

Criador
FABIO PEREIRA DE LIMA
Entendi, obrigado!!!

Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!