0Pricing
Flask Academy · Pelajaran

Buat Class Pengecualian Kustom

Tentukan error domain yang dipetakan ke JSON.

Buat Class Pengecualian Kustom adalah pelajaran Flask Academy gratis di CoddyKit. Ini adalah pelajaran 3 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 Flask Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Flask Academy mencakup 4 pelajaran total.

Kesalahan yang Mewakili Domain Anda

Angka seperti 400 bersifat umum. Pengecualian khusus menyebutkan masalah yang sebenarnya, seperti pembayaran yang gagal atau kuota yang tercapai.

Turunkan Kelas Pengecualian

Anda memulainya dengan mendefinisikan kelas yang mewarisi Exception. Ini memberi Anda kesalahan yang jelas dan dapat dimunculkan milik Anda sendiri.

class PaymentError(Exception):
    pass

Tambahkan Kode Status

Berikan atribut status_code pada kelas agar penangan mengetahui kode HTTP yang harus dikirim saat kesalahan tersebut terjadi.

class PaymentError(Exception):
    status_code = 402

Sertakan Pesan

Simpan pesan untuk manusia di konstruktor. Nantinya, penangan Anda dapat membacanya dan menempatkannya ke dalam isi respons.

def __init__(self, message):
    self.message = message

Munculkan di Dalam Tampilan

Di dalam tampilan, Anda cukup raise kesalahan ketika terjadi masalah. Flask kemudian mencari penangan yang sesuai.

if not paid:
    raise PaymentError("Card declined")

Tangani Kelas Khusus

Daftarkan errorhandler untuk kelas Anda. Penangan itu menerima instansnya, sehingga Anda dapat membaca pesan dan kode statusnya.

@app.errorhandler(PaymentError)
def on_pay(e):
    return e.message, e.status_code

Kembalikan JSON Darinya

Untuk API, ubah kesalahan menjadi JSON di dalam penangan. Klien memperoleh kegagalan terstruktur yang dapat mereka urai dengan andal.

return jsonify(error=e.message), e.status_code

Satu Dasar untuk Banyak Kesalahan

Buat satu kelas dasar dan biarkan kesalahan khusus menurunkannya. Dengan begitu, satu penangan dapat mencakup seluruh kelompok kesalahan Anda.

class ApiError(Exception):
    pass

Gunakan Nilai Bawaan yang Masuk Akal

Berikan nilai bawaan status_code seperti 400 pada kelas dasar. Kelas turunan hanya menimpanya jika memerlukan nilai yang berbeda.

class ApiError(Exception):
    status_code = 400

Jauhkan Logika dari Tampilan

Memunculkan kesalahan domain membuat tampilan tetap singkat. Penangan bertanggung jawab atas pemformatan, sehingga setiap tampilan hanya memberi tahu apa yang salah.

Mengapa Pendekatan Ini Dapat Berkembang

Seiring aplikasi berkembang, pengecualian khusus menjaga logika kesalahan tetap berada di satu tempat yang rapi. Jenis kesalahan baru dapat dipasang ke alur kerja yang sama dan bersih.

Pemeriksaan Singkat

Bagaimana tampilan memicu kesalahan domain Anda?

Ringkasan

Anda membuat kelas pengecualian khusus dengan kode status dan pesan, memunculkannya di tampilan, lalu memetakannya ke JSON yang bersih. Hebat!

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Buat Class Pengecualian Kustom” gratis?

Ya — teks lengkap “Buat Class Pengecualian Kustom” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Flask Academy, upgrade ke CoddyKit PRO. Kursus Flask Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Buat Class Pengecualian Kustom”?

Tentukan error domain yang dipetakan ke JSON. Kamu berlatih Flask 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 Flask Academy?

Tidak diperlukan pengalaman sebelumnya. Flask 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 3 dari 4.

Berapa lama pelajaran “Buat Class Pengecualian Kustom” 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 Flask Academy ini?

Ya. Setiap pelajaran Flask 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. abort dan Kode Error HTTP
  2. Daftarkan Fungsi errorhandler
  3. Buat Class Pengecualian Kustom
  4. Amplop Error JSON Seragam
← Kembali ke Flask Academy