MultipleObjectMixin
¶django.views.generic.list.
MultipleObjectMixin
¶Sebuah mixin yang dapat digunakan memperlihatkan daftar dari obyek.
Jika paginate_by
ditentukan, Django akan memberikan nomor hasil dikembalikan oleh ini. Anda dapat menentukan nomor halaman di URL di satu atau dua cara:
Gunakan parameter page
di URLconf. Sebagai contoh, ini adalah apa URLconf anda mungkin terlihat seperti:
path("objects/page<int:page>/", PaginatedView.as_view()),
Pass the page number via the page
query-string parameter. For
example, a URL would look like this:
/objects/?page=3
Nilai-nilai ini dan daftar adalah berdasarkan-1, bukan berdasarkan-0, jadi halaman pertama akan diwakili sebagai halaman 1
.
Untuk lebih pada pemberian nomor, baca pagination documentation.
As a special case, you are also permitted to use last
as a value for
page
:
/objects/?page=last
Ini mengizinkan anda mengakses halaman akhir dari hasil tanpa pertama harus menentukan seberapa banyak halaman ada.
Catat bahwa page
harus antara nomor halaman sah atau nilai last
; nilai lain apapun untuk page
akan menghasilkan di kesalahan 404.
Perpanjang
Cara dan Atribut
allow_empty
¶Sebuah boolean menentukan apakah memperlihatkan halaman jika tidak ada obyek tersedia. Jika ini adalah False
dan tidak ada obyek tersedia, tampilan akan memunculkan sebuah 404 daripada memperlihatkan sebuah halaman kosong. Secara awalan, ini adalah True
.
model
¶Model yang tampilan ini akan menampilkan data. Menentukan model = Foo
secara efektif sama seperti menentukan queryset = Foo.objects.all()
, dimana objects
berdiri untuk default manager Foo
.
queryset
¶Sebuah QuerySet
yang mewakili obyek-obyek. Jika disediakan, nilai dari queryset
menggantikan nilai disediakan untuk model
.
Peringatan
queryset
adalah sebuah atribut kelas dengan nilai berubah-ubah sehingga perawatan harus diambil ketika menggunakan itu secara langsung. Sebelum menggunakan itu, antara memanggil metode all()
nya atau mengambil itu dengan get_queryset()
yang merawat dari kloning dibelakang layar.
ordering
¶Sebuah string atau daftar dari string menentukan urutan untuk memberlakukan ke queryset
. Nilai-nilai sah adalah sama seperti itu untuk order_by()
.
paginate_by
¶Sebuah integer menentukan seberapa banyak obyek-obyek harus diperlihatkan per halaman. Jika ini diberikan, tampilan akan memberikan nomor obyek-obyek dengan paginate_by
obyek-obyek per halaman. Tampilan akan mengharapkan antara sebuah parameter string permintaan page
(melalui request.GET
) atau sebuah variabel page
ditentukan di URLconf.
paginate_orphans
¶Sebuah integer menentukan nomor dari obyek-obyek "overflow" halaman terakhir dapat diisi. Ini memperpanjang paginate_by
batasan pada halaman terakhir sampai pada paginate_orphans
, untuk menjaga halaman terakhir dari memiliki sangat kecil nomor dari obyek-obyek.
page_kwarg
¶Sebuah string menentukan nama digunakan untuk parameter halaman. Tampilan akan mengharapkan parameter ini untuk tersedia antara sebagai sebuah parameter string permintaan (melalui request.GET
) atau sebagai sebuah variabel kwarg ditentukan di URLconf. Awalan ke page
.
paginator_class
¶Kelas penomoran digunakan untuk menomorkan halaman. Secara awalan, django.core.paginator.Paginator
digunakan. Jika penyesuaian kelas penomoran tidak mempunyai antarmuka pembangun sama seperti django.core.paginator.Paginator
, anda akan juga butuh menyediakan sebuah penerapan untuk get_paginator()
.
context_object_name
¶Menandakan nama dari variabel untuk digunakan di konteks.
get_queryset
()¶Dapatkan daftar dari barang-barang untuk tampilan ini. Ini harus berupa sebuah perulangan dan mungkin sebuah queryset (dimana perilaku queryset-tertentu akan diadakan).
get_ordering
()¶Mengembalikan sebuah string (atau perulangan dari string) yang menentukan urutan yang akan diberlakukan ke queryset
.
Mengembalikan ordering
secara awalan.
paginate_queryset
(queryset, page_size)¶Mengembalikan 4-tuple mengandung (paginator
, page
, object_list
, is_paginated
).
DIbangun dengan menomori queryset
kedalam halaman dari ukuran page_size
. Jika permintaan mengandung sebuah argumen page
, antara sebagau URL tertangkap atau sebagai argumen GET, object_list
akan berhubungan ke obyek-obyek dari halaman itu.
get_paginate_by
(queryset)¶Returns the number of items to paginate by, or None
for no
pagination. By default this returns the value of paginate_by
.
get_paginator
(queryset, per_page, orphans=0, allow_empty_first_page=True)¶Mengembalikan sebuah instance dari penomor digunakan untuk tampilan ini. Secara awalan, instasiasi sebuah instance dari paginator_class
.
get_paginate_orphans
()¶An integer specifying the number of "overflow" objects the last page
can contain. By default this returns the value of
paginate_orphans
.
get_allow_empty
()¶Mengembalikan sebuah boolean menentukan apakah memperlihatkan halaman jika tidak ada obyek tersedia. Jika metode ini mengembalikan False
dan tidak ada obyek tersedia, tampilan akan memunculkan sebuah 404 daripada memperlihatkan sebuah halaman kosong. Secara awalan, ini adalah True
.
get_context_object_name
(object_list)¶Mengembalikan nama variabel konteks yang akan digunakan mewadahi daftar data yang tampilan ini dimanipulasi. Jika object_list
adalah sebuah queryset dari obyek-obyek Django dan context_object_name
tidak disetel, nama konteks akan menjadi model_name
dari the model yang queryset disusun dari, dengan postfix '_list'
ditambahkan. Sebagai contoh, model Article
akan mempunyai sebuah obyek konteks bernama article_list
.
get_context_data
(**kwargs)¶Mengembalikan data konteks untuk memperlihatkan daftar dari obyek.
Konteks
object_list
: Daftar dari obyek-obyek yang tampilan ini diperlihatkan. Jika context_object_name
ditentukan, variabel itu akan juga disetel di konteks, dengan nilai sama seperti object_list
.is_paginated
: Sebuah boolean mewakili apakah hasil dinomorkan. Khususnya, ini disetel menjadi False
jika tidak ada ukuran halaman telah ditentukan, atau jika obyek-obyek tersedia tidak menjangkau banyak halaman.paginator
: Sebuah instance dari django.core.paginator.Paginator
. Jika halaman tidak dinomorkan, variabel konteks ini akan menjadi None
.page_obj
: Sebuah instance dari django.core.paginator.Page
. Jika halaman tidak dinomorkan, variabel konteks ini akan menjadi None
.MultipleObjectTemplateResponseMixin
¶django.views.generic.list.
MultipleObjectTemplateResponseMixin
¶Sebuah kelas mixin yang melakukan membangun tanggapan berdasarkan-cetakan untuk tampilan yang beroperasi diatas daftar dari instance obyek. Diwajibkan bahwa tampilan itu campurkan dengan self.object_list
tersedia, daftar dari instance obyek yang tampilan beroperasi. self.object_list
mungkin, tetapi tidak diwajibkan menjadi, sebuah QuerySet
.
Perpanjang
Cara dan Atribut
template_name_suffix
¶Akhiran ditambahkan ke calon nama cetakan dibangkitkan-otomatis. Awalan akhiran adalah _list
.
get_template_names
()¶Mengembalikan daftar dari calon nama-nama cetakan. Mengembalikan daftar berikut:
template_name
pada tampilan (jika disediakan)<app_label>/<model_name><template_name_suffix>.html
Des 04, 2023