Heim >Backend-Entwicklung >PHP-Tutorial >So implementieren Sie Paging mit Symfony

So implementieren Sie Paging mit Symfony

一个新手
一个新手Original
2017-10-10 09:06:402125Durchsuche

1. Symfony-Paging erfordert Komponenten, daher verwenden wir hier KnpPaginatorBundle, um das Umblättern zu erreichen

2. Verwenden Sie Composer zum Herunterladen

In der Befehlszeile: Composer erforderlich „knplabs/knp-paginator-bundle“

3 Sie müssen die Komponente im Framework registrieren und in app/Resources/AppKernel.php unter dem Projekt registrieren

 public functionregisterBundles() {   
            $bundles = [                     
            new   Knp\Bundle\PaginatorBundle\KnpPaginatorBundle(),         ];    
         }

4 . Steuercode im Server


class NewsController extends Controller
{
    /**
     * 2016-1-19
     * auth:lsf
     * 查询列表
     * @param   int $page   页数
     * @param   int $limit  显示条数
    */
    public function indexAction($page,$limit){
        $em = $this->getDoctrine()->getManager();
        $qb = $em->getRepository('AppBundle:DemoList')->createQueryBuilder('u');
//Appbundle是你的模块DemoList是你的表实体 u是别名后面可接条件
        $paginator = $this->get('knp_paginator');
        $pagination = $paginator->paginate($qb, $page,$limit);
        return $this->render('news/list.html.twig',['pagination' => $pagination]);
    }
}

5. Routing

news_page:
  path: "/news/{page}/{limit}"
  defaults: {_controller: AppBundle:News:index,page:1,limit:2}


6.模板
{% for value in pagination %}
{{value.title}}{#直接就是值了#}
{% endfor %}
{{ knp_pagination_render(pagination) }}

Das obige ist der detaillierte Inhalt vonSo implementieren Sie Paging mit Symfony. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn