0Pricing
Django Academy · Pelajaran

Inline dan Field Hanya-Baca

Edit baris terkait secara inline dan lindungi field

Inline dan Field Hanya-Baca adalah pelajaran Django Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Django Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Django Academy mencakup 4 pelajaran total.

Edit Baris Terkait Bersamaan

Terkadang rekaman yang saling terkait sebaiknya berada di halaman yang sama. Inline memungkinkan Anda mengedit baris anak tepat di dalam formulir pengeditan induknya. 🧩

Dua Gaya Inline

Django menyediakan dua tata letak. TabularInline menampilkan baris dalam tabel ringkas, sedangkan StackedInline menumpuk setiap baris sebagai blok tersendiri.

Definisikan Inline

Buat kelas kecil yang merupakan subkelas dari TabularInline dan arahkan atribut modelnya ke model anak yang ingin Anda sematkan.

class CommentInline(admin.TabularInline):
    model = Comment

Hubungkan ke Induk

Cantumkan inline Anda di admin induk. Opsi inlines memberi tahu Django untuk menampilkan baris anak tersebut di dalam formulir induk.

class PostAdmin(admin.ModelAdmin):
    inlines = [CommentInline]

Sediakan Baris Kosong

Inline menampilkan baris kosong agar penambahan dapat dilakukan dengan cepat. Atur extra untuk mengendalikan jumlah tempat kosong yang muncul; biasanya satu saja sudah cukup.

extra = 1

Persyaratan FK

Inline hanya berfungsi jika model anak memiliki ForeignKey ke model induk. Tautan itulah yang membantu Django mengetahui baris mana yang saling terkait.

Lindungi Bidang

Beberapa nilai seharusnya terlihat, tetapi tidak boleh diedit secara manual. Tambahkan nilai tersebut ke readonly_fields dan admin akan menampilkannya dalam keadaan terkunci. 🔒

readonly_fields = ("created", "updated")

Stempel Waktu Otomatis

Bidang seperti tanggal auto_now_add diatur oleh Django, bukan oleh pengguna. Menandainya sebagai readonly mencegah pengeditan yang membingungkan dan tidak dapat disimpan.

Tampilkan Nilai Terhitung

readonly_fields juga dapat mencantumkan sebuah metode, sehingga Anda dapat menampilkan nilai terhitung yang tidak memiliki kolom basis data sebenarnya.

def word_count(self, obj):
    return len(obj.body.split())

Readonly di Dalam Inline

Inline juga menerima readonly_fields. Gunakan opsi tersebut untuk menampilkan data anak dengan jelas, sekaligus menjaga kolom sensitif tetap tidak dapat diedit.

Izin Tetap Berlaku

Readonly berkaitan dengan formulir, bukan keamanan. Akses sebenarnya diatur oleh izin pengguna, jadi gunakan keduanya untuk pengeditan yang aman.

Pemeriksaan Singkat

Apa yang diperlukan agar model muncul sebagai inline?

Ringkasan

Anda menyematkan baris terkait dengan inlines dan mengunci nilai sensitif menggunakan readonly_fields. Bersama-sama, keduanya membuat pengeditan admin menjadi lengkap sekaligus aman. ✅

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Inline dan Field Hanya-Baca” gratis?

Ya — teks lengkap “Inline dan Field Hanya-Baca” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Django Academy, upgrade ke CoddyKit PRO. Kursus Django Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Inline dan Field Hanya-Baca”?

Edit baris terkait secara inline dan lindungi field Kamu berlatih Django Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Django Academy?

Tidak diperlukan pengalaman sebelumnya. Django Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Inline dan Field Hanya-Baca” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Django Academy ini?

Ya. Setiap pelajaran Django Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. createsuperuser dan Masuk
  2. Mendaftarkan Model dengan admin.site
  3. Menyesuaikan ModelAdmin
  4. Inline dan Field Hanya-Baca
← Kembali ke Django Academy