0

カスタム モデルにメザニン ページネーションを使用する方法がわかりません。

ドキュメントは言う:

mezzanine.core.templatetags.mezzanine_tags.pagination_for(parser, token) ページネーション リンクにクエリ文字列を保持するためのページネーション テンプレートとデータを含めます。また、exclude_vars 引数を介して、ページネーション リンクから除外するために、現在のクエリ文字列に var 名のコンマ区切り文字列を含めることもできます。

私のテンプレートファイルで理解している限り、 を含めmezzanine_tagsて呼び出す必要があります{% pagination_for parser token %}

パーサーとトークンが何であるかがよくわかりません。そのテンプレートタグのソースコードを見て、次のようにしました:

@register.inclusion_tag("includes/pagination.html", takes_context=True)
def pagination_for(context, current_page, page_var="page", exclude_vars=""):
    """
    Include the pagination template and data for persisting querystring
    in pagination links. Can also contain a comma separated string of
    var names in the current querystring to exclude from the pagination
    links, via the ``exclude_vars`` arg.
    """
    querystring = context["request"].GET.copy()
    exclude_vars = [v for v in exclude_vars.split(",") if v] + [page_var]
    for exclude_var in exclude_vars:
        if exclude_var in querystring:
            del querystring[exclude_var]
    querystring = querystring.urlencode()
    return {
        "current_page": current_page,
        "querystring": querystring,
        "page_var": page_var,
    }

使用状況を見て購入するトークンは、現在のページを示す数字にすぎないと思います。しかし、どうすればcontextテンプレートに入ることができますか?

4

1 に答える 1