Tampilan penyuntingan umumLink to this heading

Tampilan berikut digambarkan pada halaman ini dan menyediakan sebuah dasar untuk menyunting isi:

FormViewLink to this heading

class django.views.generic.edit.FormViewLink to this definition

Sebuah tampilan yang memperlihatkan sebuah formulir. Pada kesalahan, memperlihatkan kembali formulir dengan pengesahan kesalahan; pada pengalihan sukses ke URL baru.

Ancestors (MRO)

Tampilan ini mewarisi metode dan atribut dari tampilan berikut:

Contoh myapp/forms.py:

Code
from django import forms

class ContactForm(forms.Form):
    name = forms.CharField()
    message = forms.CharField(widget=forms.Textarea)

    def send_email(self):
        # send email using the self.cleaned_data dictionary
        pass

Contoh myapp/views.py:

Code
from myapp.forms import ContactForm
from django.views.generic.edit import FormView

class ContactView(FormView):
    template_name = 'contact.html'
    form_class = ContactForm
    success_url = '/thanks/'

    def form_valid(self, form):
        # This method is called when valid form data has been POSTed.
        # It should return an HttpResponse.
        form.send_email()
        return super().form_valid(form)

Contoh myapp/contact.html:

Django template
<form method="post">{% csrf_token %}
    {{ form.as_p }}
    <input type="submit" value="Send message">
</form>

CreateViewLink to this heading

class django.views.generic.edit.CreateViewLink to this definition

Sebuah tampilan yang menampilkan sebuah formulir untuk membuat sebuah obyek, memperlihatkan kembali formulir dengan pengesahan kesalahan (jika ada) dan menyimpan obyek.

Ancestors (MRO)

Tampilan ini mewarisi metode dan atribut dari tampilan berikut:

Atribut

template_name_suffixLink to this definition

Halaman CreateView diperlihatkan ke permintaan GET menggunakan template_name_suffix dari '_form'. Sebagai contoh, merubah atribut ini pada '_create_form' untuk sebuah tampilan membuat obyek-obyek untuk contoh model Author akan menyebabkan awalan template_name menjadi 'myapp/author_create_form.html'.

objectLink to this definition

Ketika menggunakan CreateView anda mempunyai akses ke self.object, yaitu obyek sedang dibuat. Jika obyek belum dibuat, nilai akan menjadi None.

Contoh myapp/views.py:

Code
from django.views.generic.edit import CreateView
from myapp.models import Author

class AuthorCreate(CreateView):
    model = Author
    fields = ['name']

Contoh myapp/author_form.html:

Django template
<form method="post">{% csrf_token %}
    {{ form.as_p }}
    <input type="submit" value="Save">
</form>

UpdateViewLink to this heading

class django.views.generic.edit.UpdateViewLink to this definition

Sebuah tampilan yang memperlihatkan sebuah formulir untuk menyunting sebuah obyek yang ada, memperlihatkan kembali formulir dengan pengesahan kesalahan (jika ada) dan menyimpan perubahan ke obyek. Ini menggunakan sebuah formulir secara otomatis dibangkitkan dari kelas model obyek (meskipun sebuah kelas formulir secara manual ditentukan).

Ancestors (MRO)

Tampilan ini mewarisi metode dan atribut dari tampilan berikut:

Atribut

template_name_suffixLink to this definition

Halaman UpdateView diperlihatkan ke permintaan GET menggunakan template_name_suffix dari '_form'. Sebagai contoh, merubah atribut ini pada '_update_form' untuk sebuah tampilan membuat obyek-obyek untuk contoh model Author akan menyebabkan awalan template_name menjadi 'myapp/author_update_form.html'.

objectLink to this definition

Ketika menggunakan UpdateView anda mempunyai akses ke self.object, yaitu obyek sedang diperbaharui.

Contoh myapp/views.py:

Code
from django.views.generic.edit import UpdateView
from myapp.models import Author

class AuthorUpdate(UpdateView):
    model = Author
    fields = ['name']
    template_name_suffix = '_update_form'

Contoh myapp/author_update_form.html:

Django template
<form method="post">{% csrf_token %}
    {{ form.as_p }}
    <input type="submit" value="Update">
</form>

DeleteViewLink to this heading

class django.views.generic.edit.DeleteViewLink to this definition

Sebuah tampilan yang memperlihatkan sebuah halaman penegasan dan menghapus obyek yang ada. Obyek yang diberikan akan hanya dihapus jika metode permintaan adalah POST. Jika tampilan ini diambil melalui GET, itu akan memperlihatkan sebuah halaman penegasan yang harus mengandung sebuah formulir yang POST ke URL sama.

Ancestors (MRO)

Tampilan ini mewarisi metode dan atribut dari tampilan berikut:

Atribut

template_name_suffixLink to this definition

Halaman DeleteView diperlihatkan ke permintaan GET menggunakan template_name_suffix dari '_confirm_delete'. Sebagai contoh, merubah atribut ini pada '_check_delete' untuk sebuah tampilan membuat obyek-obyek untuk contoh model Author akan menyebabkan awalan template_name menjadi 'myapp/author_check_delete.html'.

Contoh myapp/views.py:

Code
from django.urls import reverse_lazy
from django.views.generic.edit import DeleteView
from myapp.models import Author

class AuthorDelete(DeleteView):
    model = Author
    success_url = reverse_lazy('author-list')

Contoh myapp/author_confirm_delete.html:

Django template
<form method="post">{% csrf_token %}
    <p>Are you sure you want to delete "{{ object }}"?</p>
    <input type="submit" value="Confirm">
</form>