# Dokumentasi Django 5.2.8

# Banyak obyek mixin

## `MultipleObjectMixin`

class 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

  - `django.views.generic.base.ContextMixin`

  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`

class 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

  - `TemplateResponseMixin`

  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:

    - nilai dari `template_name` pada tampilan (jika disediakan)

    - `<app_label>/<model_name><template_name_suffix>.html`