-1

Symfony Framework (version2.8) を学んでいます。データベースからすべてのユーザーを表示するために、knpPaginator を使用しています。今、レジスターをソートしようとしていますが、できません。これは今までの私のプロジェクトのイメージです ユーザービュー

name(Nombre) フィルターをクリックすると、このエラーが表示されます 指定されたクエリで [u] によってエイリアスされたコンポーネントはありません

助けてください ありがとう

4

2 に答える 2

0

構成:

knp_paginator:
    page_range: 5                      # default page range used in pagination control
    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
template:
    pagination: KnpPaginatorBundle:Pagination:sliding.html.twig     # sliding pagination controls template
    sortable: KnpPaginatorBundle:Pagination:sortable_link.html.twig # sort link template

コントローラ:

public function listAction(Request $request)
{
    $em    = $this->get('doctrine.orm.entity_manager');
    $dql   = "SELECT a FROM AcmeMainBundle:Article a";
    $query = $em->createQuery($dql);

    $paginator  = $this->get('knp_paginator');
    $pagination = $paginator->paginate(
        $query, /* query NOT result */
        $request->query->getInt('page', 1)/*page number*/,
    10/*limit per page*/
);

// parameters to template
return $this->render('AcmeMainBundle:Article:list.html.twig', array('pagination' => $pagination));

}

意見:

{# total items count #}
<div class="count">
    {{ pagination.getTotalItemCount }}
</div>
<table>
    <tr>
    {# sorting of properties based on query components #}
        <th>{{ knp_pagination_sortable(pagination, 'Id', 'a.id') }}</th>
        <th{% if pagination.isSorted('a.Title') %} class="sorted"{% endif %}>       {{ knp_pagination_sortable(pagination, 'Title', 'a.title') }}</th>
        <th>{{ knp_pagination_sortable(pagination, 'Release', ['a.date', 'a.time']) }}</th>
    </tr>

{# table body #}
{% for article in pagination %}
<tr {% if loop.index is odd %}class="color"{% endif %}>
    <td>{{ article.id }}</td>
    <td>{{ article.title }}</td>
    <td>{{ article.date | date('Y-m-d') }}, {{ article.time |     date('H:i:s') }}</td>
</tr>
{% endfor %}
</table>
{# display navigation #}
<div class="navigation">
     {{ knp_pagination_render(pagination) }}
</div>

詳細: https://github.com/KnpLabs/KnpPaginatorBundle

于 2016-09-20T11:46:52.373 に答える