Mixin obyek tunggalLink to this heading

SingleObjectMixinLink to this heading

class django.views.generic.detail.SingleObjectMixinLink to this definition

Menyediakan sebuah mekanisme untuk mencari sebuah obyek terkait dengan permintaan HTTP saat ini.

Cara dan Atribut

modelLink to this definition

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.

querysetLink to this definition

Sebuah QuerySet yang mewakili obyek-obyek. Jika disediakan, nilai dari queryset menggantikan nilai disediakan untuk model.

slug_fieldLink to this definition

Nama dari bidang pada model yang mengandung keong. Secara awalan, slug_field adalah 'slug'.

slug_url_kwargLink to this definition

Nama dari argumen kata kunci URLConf yang mengandung keong. Secara awalan, slug_url_kwarg adalah 'slug'.

pk_url_kwargLink to this definition

Nama dari argumen kata kunci URLConf yang mengandung primary key. Secara awalan, pk_url_kwarg adalah 'pk'.

context_object_nameLink to this definition

Menandakan nama dari variabel untuk digunakan di konteks.

query_pk_and_slugLink to this definition

Jika True, menyebabkan get_object() melakukan pencariannya menggunakan kedua primay key dan keong. Awalan menjadi False.

Atribut ini dapat membantu mengatasi serangan insecure direct object reference. Ketika aplikasi mengizinkan akses ke obyek-obyek pribadi dengan primay key berurutan, seorang penyerang dapat menebak brute-force semua URL; dengan demikian mendapatkan semua daftar dari semua obyek-obyek di aplikasi. Jika pengguna dengan akses ke obyek-obyek pribadi harus dicegah dari mendapatkan daftar ini, pengaturan query_pk_and_slug menjadi True akan membantu mencegah menebak URL setiap URL akan membutuhkan dua benar, argumen bukan-berurutan. Cukup menggunakan sebuah keong unik mungkin melayani tujuan yang sama, tetapi skema ini mengizinkan anda memiliki keong bukan-unik.

get_object(queryset=None)Link to this definition

Mengembalikan obyek tunggal yang tampilan ini akan diperlihatkan. Jika queryset disediakan, queryset itu akan digunakan sebagai sumber dari obyek-obyek; jika tidak, get_queryset() akan digunakan. get_object() mencari sebuah argumen pk_url_kwarg di argumen pada tampilan; jika argumen ini ditemukan, metode ini melakukan sebuah pencarian berdasarkan primary-key menggunakan nilai itu. Jika argumen ini tidak ditemukan, itu mencari sebuah argumen slug_url_kwarg, dan melakukan pencarian keong menggunakan slug_field.

Ketika query_pk_and_slug adalah True, get_object() akan melakukan pencariannya menggunakan kedua primary key dan keong.

get_queryset()Link to this definition

Mengembalikan queryset yang akan digunakan mengambil obyek yang tampilan ini akan diperlihatkan. Secara awalan, get_queryset() mengembalikan nilai dari atribut queryset jika itu disetel, jika tidak itu membangun sebuah QuerySet dengan memanggil metode all() pada pengelola awalan atribut model.

get_context_object_name(obj)Link to this definition

Mengembalikan nama variabel konteks yang akan digunakan mewadahi daftar data yang tampilan ini dimanipulasi. Jika context_object_name tidak disetel, nama konteks akan dibangun dari model_name dari the model yang queryset disusun dari. Sebagai contoh, model Article akan mempunyai sebuah obyek konteks bernama article.

get_context_data(**kwargs)Link to this definition

Mengembalikan data konteks untuk memperlihatkan daftar dari obyek.

Penerapan dasar dari metode ini membutuhkan bahwa atribut self.object disetel oleh tampilan (bahkan jika None). Pastikan melakukan ini jika anda sedang menggunakan mixin ini tanpa satu dari tampilan siap-pakai yang melakukan begitu.

Itu mengembalikan sebuah kamus dengan isi ini:

  • object: Obyek dimana tampilan ini diperlihatkan (self.object).

  • context_object_name: self.object juga akan disimpan dibawah nama dikembalikan oleh get_context_object_name(), yang awalan ke versi huruf kecil dari nama model.

get_slug_field()Link to this definition

Mengembalikan nama dari bidang keong untuk digunakan mencari oleh keong. Secara awalan ini cukup mengembalikan nilai dari slug_field.

SingleObjectTemplateResponseMixinLink to this heading

class django.views.generic.detail.SingleObjectTemplateResponseMixinLink to this definition

Sebuah kelas mixin yang melakukan pembangunan tanggapan berdasarkan-cetakan untuk tampilan yang beroperasi diatas instance obyek tunggal. Membutuhkan bahwa tampila itu dicampur dengan menyediakan self.object, instance obyek yang tampilan beroperasi. self.object akan biasanya, tetapi itu tidak diwajibkan, sebuah instance dari model Django. Itu mungkin None jika tampilan di pengolahan dari membangun instance baru.

Perpanjang

Cara dan Atribut

template_name_fieldLink to this definition

Bidang pada instance obyek saat ini yang dapat digunakan untuk menentukan nama dari calon cetakan. Jika antara template_name_field itu sendiri atau nilai dari template_name_field pada instance obyek saat ini adalah None, obyek tidak akan digunakan untuk calon nama cetakan.

template_name_suffixLink to this definition

Akhiran ditambahkan ke calon nama cetakan dibangkitkan-otomatis. Awalan akhiran adalah _detail.

get_template_names()Link to this definition

Mengembalikan daftar dari calon nama-nama cetakan. Mengembalikan daftar berikut:

  • nilai dari template_name pada tampilan (jika disediakan)

  • isi dari bidang template_name_field pada instance obyek yang tampilan sedang beroperasi diatas (jika tersedia)

  • <app_label>/<model_name><template_name_suffix>.html