标签: knppaginator

Symfony2 Doctrine错误:无法计算使用HAVING子句的查询.使用输出步行器进行分页

我试图获得非空的集合,即至少有一个对象.集合实体与Object实体具有OneToMany关系.我正在使用KNP paginator来分页结果.这是我的功能:

  public function fetchAction(Request $request){
    $em = $this->getDoctrine()->getManager();

    $page = $request->get('page', 1);
    $limit = 10;

    $collections = $em->createQueryBuilder()
        ->select('c')
        ->add('from', 'CollectionBundle:Collection c LEFT JOIN c.object o')
        ->having('COUNT(o.id)>0')
        ->orderBy('c.date', 'DESC')
        ->getQuery();

    $collections = $this->get("knp_paginator")->paginate($collections, $page, $limit);

    return $this->render('CollectionBundle:Collection:fetch.html.twig', [
        'collections' => $collections
    ]);
}
Run Code Online (Sandbox Code Playgroud)

错误

我一直听到以下错误

 Cannot count query that uses a HAVING clause. Use the output walkers for pagination
Run Code Online (Sandbox Code Playgroud)

没有'Having'子句一切正常,但我必须得到非空集合.

mysql symfony doctrine-orm knppaginator

4
推荐指数
1
解决办法
2272
查看次数

如何为 Symfony 4 配置 KnpPaginatorBundle

我希望在 symfony4 中实现 KnpPaginatorBundle。

我的问题是,在他们的文档(适用于 S3)中,他们建议使用以下参数 i config.yml。

knp_paginator:
page_range: 5                       # number of links showed in the pagination menu (e.g: you have 10 pages, a page_range of 3, on the 5th page you'll see links to page 4, 5, 6)
default_options:                                 
    page_name: page                 # page query parameter name
    sort_field_name: sort           # sort field query parameter name
    sort_direction_name: direction  # sort direction query parameter name
    distinct: true                  # ensure distinct results, useful when ORM queries are using GROUP BY statements …
Run Code Online (Sandbox Code Playgroud)

symfony knppaginator symfony4

4
推荐指数
1
解决办法
2801
查看次数

KNP Paginator并可与ajax一起排序

是否可以简单地使用ajax运行knp paginator?是否可能,最好的方法是什么?

问候迈克尔

ajax knppaginator

3
推荐指数
1
解决办法
3011
查看次数

使用KnpPaginatorBundle的多个模板

我使用KnpPaginatorBundle来管理我网站后台的分页,效果很好

我将其配置为使用自定义模板

knp_paginator:
    template:
        pagination: MyappMainBundle::pagination.html.twig
Run Code Online (Sandbox Code Playgroud)

然后,我想在前台使用相同的包但具有不同的html结构.所以,我的问题是:是否可以为分页设置两个模板?一个用于后台,一个用于前台.

提前感谢您的回答.

php symfony twig knppaginator symfony-2.5

2
推荐指数
1
解决办法
2531
查看次数

如何获取 Symfony 控制器中搜索查询的总计数

用例:我想将搜索查询和结果总数存储到数据库中,这样我就可以看到人们正在搜索的内容在我的应用程序中不存在。

\n\n

什么是有效的:我能够获取并存储查询,但我不知道如何获取搜索结果的总数。

\n\n

这是来自控制器的代码示例。当我当前尝试此操作时,我得到以下信息

\n\n
\n

错误:可捕获的致命错误:类对象\n Knp\\Bundle\\PaginatorBundle\\Pagination\\SlidingPagination 无法\n 转换为字符串

\n
\n\n

我尝试通过请求 $pagination[totalCount] 将 $pagination 像数组一样处理,但只是返回 null。

\n\n
 public function fpcAction(Request $request)\n    {\n\n            $query = dump($request->query->get(\'q\'));\n\n            $finder = $this->container->get(\'fos_elastica.finder.app.product\');\n            $page = $request->query->getInt(\'page\', 1);\n\n            $paginator = $this->get(\'knp_paginator\');\n            $results = $finder->createPaginatorAdapter($query);\n            $pagination = $paginator->paginate($results, $page, 12);\n\n\n\n            $searchmetrics = new SearchTerms();\n            $searchmetrics->setSearchterm($query);\n            $searchmetrics->setDate(time());\n\n            // TODO: Need to get the total qty of search results for this specific query\n            $searchmetrics->setResultsqty($pagination);\n\n            $entityManager = $this->getDoctrine()->getManager();\n            $entityManager->persist($searchmetrics);\n            $entityManager->flush();\n\n\n            return $this->render(\'default/search.html.twig\', [\'searchresults\' => $pagination, …
Run Code Online (Sandbox Code Playgroud)

php controller symfony knppaginator knppaginatorbundle

1
推荐指数
1
解决办法
3058
查看次数

显示Knp分页中的页数

我在knp分页中安装并覆盖模板.但是我需要显示有多少页面.例如:1页10页,5页10页等?我阅读官方文档,但我找不到ansver.

symfony knppaginator

0
推荐指数
1
解决办法
3964
查看次数