0Pricing
Django Academy · Pelajaran

str dan Kelas Meta

Buat objek mudah dibaca dan tetapkan perilaku tabel

str dan Kelas Meta 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.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Make Objects Readable

Out of the box, a model object prints as a vague Object 1. You can fix that and also shape table behavior cleanly.

Define __str__

Add a __str__ method to return a friendly label. Now your object shows its title instead of a useless number.

class Book(models.Model):
    title = models.CharField(max_length=200)

    def __str__(self):
        return self.title

Where __str__ Shows Up

That __str__ label appears in the admin, the shell, and templates, making every object instantly recognizable. 👀

Always Return a String

Your __str__ must return a string. If a field might be a number, wrap it with str() before returning it.

def __str__(self):
    return str(self.year)

Meet the Meta Class

An inner Meta class holds options about the model as a whole, separate from its fields. It tunes how the table behaves.

class Book(models.Model):
    class Meta:
        ordering = ["title"]

ordering Sets Default Sort

The ordering Meta option sets how query results sort by default, so lists come back in a predictable order.

class Meta:
    ordering = ["-created"]

Friendly Names with verbose_name

Use verbose_name and verbose_name_plural in Meta to control the labels Django shows in the admin interface.

class Meta:
    verbose_name_plural = "Books"

Custom Table Name

Override the generated table name with db_table in Meta when you need to match an existing or legacy database.

class Meta:
    db_table = "catalog_books"

Cross-Field Uniqueness

The unique_together Meta option requires a combination of fields to be unique, like one slug per author.

class Meta:
    unique_together = ["author", "slug"]

Meta Describes the Model

Think of Meta as settings for the whole model, while fields and __str__ describe its data and display.

Both Are Optional but Worth It

You can skip __str__ and Meta, but adding them makes your models far nicer to work with day to day.

Quick Check

What is the main job of the __str__ method on a model?

Recap: __str__ and Meta

You learned that __str__ gives objects a readable name and the Meta class tunes model-wide behavior like ordering and names. Polished models! 🎉

Pertanyaan yang Sering Diajukan

Apakah pelajaran “str dan Kelas Meta” gratis?

Ya — teks lengkap “str dan Kelas Meta” 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 “str dan Kelas Meta”?

Buat objek mudah dibaca dan tetapkan perilaku tabel 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 “str dan Kelas Meta” 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. Mendefinisikan Kelas Model
  2. Memilih Jenis Field
  3. Opsi Field: null, blank, default
  4. str dan Kelas Meta
← Kembali ke Django Academy