PaginatorLink to this heading

Soláthraíonn Django cúpla rang a chuidíonn leat sonraí leathanaigh a bhainistiú - is é sin, sonraí atá roinnte ar fud roinnt leathanaigh, le naisc “Roimhe Sea/Ar Aghaidh”. Tá na ranganna seo ina gcónaí in:source: django/core/paginator.py.

Le haghaidh samplaí, féach an:doc: `Treoir ábhair leathanacha' </topics/pagination>.

Aicme PaginatorLink to this heading

class Paginator(object_list, per_page, orphans=0, allow_empty_first_page=True, error_messages=None)Link to this definition

Feidhmíonn leathanaigh cosúil le seicheamh de:class: Leathanach nuair a úsáidtear `len () ``nó é ag athrá go díreach.

Paginator.object_listLink to this definition

Riachtanach. Liosta, tuple, QuerySet, nó réad eile atá inslithe le modh count () ``nó ``__len__ (). Le haghaidh leathanaigh chomhsheasmhach, ba cheart QuerySets a ordú, m.sh. le an:meth: ~django.db.models.query.queryset.order_by clásal nó le clásal réamhshocraithe:attr: ~Django.db.Models.Options.Ordering ar an tsamhail.

Paginator.per_pageLink to this definition

Riachtanach. An líon uasta na míreanna atá le cur san áireamh ar leathanach, gan dílleachtaí san áireamh (féach an argóint roghnach: attr: ~Paginator.orphans thíos).

Paginator.orphansLink to this definition

Roghnach. Úsáid é seo nuair nach dteastaíonn uait leathanach deireanach a bheith agat le mórán earraí. Más rud é go mbeadh roinnt míreanna níos lú ná nó cothrom le orphans` sa leathanach deireanach, cuirfear na míreanna sin leis an leathanach roimhe seo (arb é an leathanach deireanach) in ionad na míreanna a fhágáil ar leathanach leo féin. Mar shampla, le 23 mír, per_page=10, agus orphans=3, beidh dhá leathanach ann; an chéad leathanach le 10 mír agus an dara leathanach (agus deireanach) le 13 mír. Tá 'orphans' réamhshocraithe go nialas, rud a chiallaíonn nach ndéantar leathanaigh a chomhcheangal riamh agus d'fhéadfadh mír amháin a bheith ag an leathanach deireanach.

Paginator.allow_empty_first_pageLink to this definition

Roghnach. Cibé an gceadaítear don chéad leathanach a bheith folamh nó nach bhfuil. Má tá False agus object_list folamh, ansin ardófar earráid EmptyPage.

Paginator.error_messagesLink to this definition

Ligeann an argóint error_messages duit na teachtaireachtaí réamhshocraithe a ardóidh an paginator a shárú. Pas isteach i bhfoclóir le heochracha a mheaitseálann leis na teachtaireachtaí earráide is mian leat a shárú. Is iad na heochracha teachtaireachta earráide atá ar fáil ná: invalid_page, min_page`, agus no_results.

Mar shampla, seo an teachtaireacht earráide réamhshocraithe:

Python console
>>> from django.core.paginator import Paginator
>>> paginator = Paginator([1, 2, 3], 2)
>>> paginator.page(5)
Traceback (most recent call last):
  ...
EmptyPage: That page contains no results

Agus seo teachtaireacht earráide saincheaptha:

Python console
>>> paginator = Paginator(
...     [1, 2, 3],
...     2,
...     error_messages={"no_results": "Page does not exist"},
... )
>>> paginator.page(5)
Traceback (most recent call last):
  ...
EmptyPage: Page does not exist

ModhannaLink to this heading

Paginator.get_page(number)Link to this definition

Tuairisceáin a: aicme: réad Leathanach leis an t-innéacs bunaithe ar 1 a thugtar, agus uimhreacha leathanaigh lasmuigh de raon agus neamhbhailí a láim

Mura bhfuil an leathanach ina uimhir, filleann sé an chéad leathanach ar ais. Má tá uimhir an leathanaigh diúltach nó níos mó ná líon na leathanaigh, filleann sé an leathanach deireanach ar ais.

Ardaíonn eisceacht an:exc: EmptyPage ach má shonraíonn tú Paginator (..., allow_empty_first_page=False) ``agus an `object_list folamh.

Paginator.page(number)Link to this definition

Tuairisceáin a: aicme: réad Leathanach leis an innéacs 1-bhunaithe a thugtar. Ardaithe:exc: PageNotanInteger mura féidir an uimhre a thiontú go sláimhir trí ``int () ``a ghlaoch. Ardaithe:exc: EmptyPage mura bhfuil an uimhir leathanaigh a thugtar ann.

Paginator.get_elided_page_range(number, *, on_each_side=3, on_ends=2)Link to this definition

Tugann liosta 1-bhunaithe ar ais d'uimhreacha leathanaigh cosúil la:attr: Paginator.page_range, ach féadfaidh sé ellipsis a chur le ceachtar nó ar an dá thaobh den uimhir leathanaigh reatha nuai:attr: Paginator.num_pages mór.

Cinntear líon na leathanaigh atá le cur san áireamh ar gach taobh den uimhir leathanaigh reatha ag an argóint on_each_side atá réamhshocraithe go 3.

Cinntear líon na leathanaigh atá le cur san áireamh ag tús agus ag deireadh raon leathanaigh ag an argóint on_ends` atá réamhshocraithe go 2.

Mar shampla, leis na luachanna réamhshocraithe do on_each_side agus on_ends, má tá an leathanach reatha 10 agus má tá 50 leathanach ann, beidh raon an leathanaigh [1, 2, '...', 7, 8, 9, 10, 11, 12, 13, '...', 49, 50]. Mar thoradh air seo beidh leathanaigh 7, 8, agus 9 ar thaobh na láimhe clé de agus 11, 12, agus 13 ar dheis den leathanach reatha chomh maith le leathanaigh 1 agus 2 ag an tús agus 49 agus 50 ag an deireadh.

Ardaithe:exc: Invalidpage mura bhfuil an uimhir leathanaigh thugtar ann.

tréitheLink to this heading

Paginator.ELLIPSISLink to this definition

Sreang inaistrithe a úsáidtear mar ionad d'uimhreacha leathanaigh éilithe sa raon leathanaigh ar ais ag: meth: ~paginator.get_elided_page_range. Is é réamhshocraithe '... '.

Paginator.countLink to this definition

Líon iomlán na rudaí, ar fud na leathanaigh go léir.

Paginator.num_pagesLink to this definition

Líon iomlán na leathanaigh.

Paginator.page_rangeLink to this definition

Athraitheoir raon 1-bhunaithe d'uimhreacha leathanaigh, m.sh. ag toradh [1, 2, 3, 4].

Aicme LeathanachLink to this heading

De ghnáth ní thógfaidh tú rudaí Page de láimh - gheobhaidh tú iad trí:class: Paginator a athrá, nó trí:meth: Paginator.page a úsáid.

class Page(object_list, number, paginator)Link to this definition

Feidhmíonn leathanach cosúil le seicheamh de:attr: Page.Object_List nuair a úsáidtear `len () ``nó ag athrá go díreach é.

ModhannaLink to this heading

Page.has_next()Link to this definition

Tugann sé ar ais True má tá an chéad leathanach eile ann.

Page.has_previous()Link to this definition

Tugann sé ar ais True má tá leathanach roimhe seo ann.

Page.has_other_pages()Link to this definition

Tugann sé ar ais True má tá an chéad leathanach eile **nó ** roimhe seo ann.

Page.next_page_number()Link to this definition

Tugann an chéad uimhir leathanaigh eile ar ais. Ardaithe:exc: Invalidpage mura bhfuil an chéad leathanach eile ann.

Page.previous_page_number()Link to this definition

Tugann uimhir leathanaigh roimhe seo ar ais. Ardaithe:exc: InvalidPage mura bhfuil an leathanach roimhe seo ann.

Page.start_index()Link to this definition

Filleann sé innéacs 1-bhunaithe an chéad réad ar an leathanach, i gcoibhneas leis na rudaí go léir i liosta an paginéora. Mar shampla, nuair a bheidh liosta de 5 rud á ndéanamh leathanaigh le 2 rud in aghaidh an leathanaigh, chuirfeadh an dara leathanach's:meth: ~page.start_index ar ais 3.

Page.end_index()Link to this definition

Filleann sé an t-innéacs 1-bhunaithe den réad deireanach ar an leathanach, i gcoibhneas leis na rudaí go léir i liosta an leathanaigh. Mar shampla, nuair a chuirtear liosta de 5 rud le 2 rud in aghaidh an leathanaigh á leathanaigh á leathanaigh, chuirfeadh an dara leathanach's:meth: ~page.end_index ar ais 4.

tréitheLink to this heading

Page.object_listLink to this definition

An liosta na rudaí ar an leathanach seo.

Page.numberLink to this definition

An uimhir leathanaigh 1-bhunaithe don leathanach seo.

Page.paginatorLink to this definition

An réad comhcheangail:class: Paginator.

EisceachtaíLink to this heading

exception InvalidPageLink to this definition

Aicme bonn le haghaidh eisceachtaí a ardaítear nuair a chuirtear uimhir leathanaigh neamhbhailí ar phaginator.

Ardaíonn an modh: Meth: Paginator.page eisceacht mura bhfuil an leathanach iarrtha neamhbhailí (ie nach sláimhir) nó nach bhfuil aon rudaí ann. Go ginearálta, is leor an eisceacht Invalidpage a ghabháil, ach más mian leat níos mó gráinneachta, is féidir leat ceachtar de na heisceachtaí seo a leanas a ghabháil:

exception PageNotAnIntegerLink to this definition

Ardaítear nuai:meth: ~Paginator.page tugtar luach nach sláimhir é.

exception EmptyPageLink to this definition

Ardaítear nuai:meth: ~Paginator.page tugtar luach bailí ach níl aon rud ann ar an leathanach sin.

Is fo-aicmí iad an dá eisceacht de:exc: InvalidPage, ionas gur féidir leat iad a láimhseáil le ach amháin InvalidPage.