Mengapa Anda Memerlukan Migrasi, Bukan create_all
Pahami risiko mengubah skema aktif secara manual.
Mengapa Anda Memerlukan Migrasi, Bukan create_all adalah pelajaran Flask Academy gratis di CoddyKit. Ini adalah pelajaran 1 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.
Skema Selalu Berubah
Aplikasi nyata terus berkembang, jadi tabel Anda juga harus berubah. Anda akan menambahkan kolom, mengganti nama bidang, dan menghapus yang lama seiring bertambahnya fitur. 🔄
create_all Hanya Membangun Sekali
Ingat batasan yang Anda temui sebelumnya: create_all hanya membuat tabel yang belum ada. Fungsi ini tidak pernah menyentuh tabel yang sudah ada.
db.create_all()Perbaikan Buruk yang Menggoda
Salah satu perbaikan yang menggoda adalah menghapus lalu membuat ulang. Cara ini berhasil dalam demonstrasi, tetapi menghapus setiap baris, sesuatu yang tidak terpikirkan dalam produksi.
db.drop_all()
db.create_all()Mengedit Manual Itu Berisiko
Menjalankan ALTER TABLE mentah secara manual pada basis data aktif itu rapuh. Satu salah ketik atau langkah yang terlewat dapat merusak data tanpa cara mudah untuk membatalkannya.
Apa Itu Migrasi
Migrasi adalah skrip kecil yang memindahkan skema dari satu versi ke versi berikutnya melalui langkah-langkah yang aman dan dapat diulang.
Berversi dan Berurutan
Setiap migrasi memiliki id versi dan menunjuk ke migrasi sebelumnya. Bersama-sama, semuanya membentuk riwayat berurutan dari setiap perubahan skema.
Maju dan Mundur
Migrasi mendefinisikan dua jalur: upgrade menerapkan perubahan, sedangkan downgrade membatalkannya jika terjadi kesalahan.
def upgrade():
...
def downgrade():
...Flask-Migrate Membungkus Alembic
Flask-Migrate menghubungkan aplikasi Anda ke Alembic, alat yang mendeteksi perubahan skema dan menulis skrip migrasi untuk Anda.
Melacak Versi Saat Ini
Migrasi mencatat versi skema saat ini di dalam tabel bernama alembic_version, sehingga alat tersebut selalu mengetahui posisi Anda.
Aman di Setiap Lingkungan
Skrip migrasi yang sama berjalan di laptop, CI, dan produksi, sehingga setiap lingkungan berakhir dengan skema yang identik.
Kapan Harus Beralih
Gunakan create_all hanya untuk prototipe paling awal. Begitu model Anda mulai berubah, beralihlah sepenuhnya ke migrasi.
Pemeriksaan Singkat
Tabel Anda sudah ada dan Anda baru saja menambahkan kolom. Mengapa tidak mengandalkan create_all?
Ringkasan
Anda melihat mengapa create_all tidak dapat mengembangkan skema dan bagaimana migrasi menghadirkan perubahan yang aman, berversi, dan dapat dibatalkan. 🎉
Belajar Python dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Mengapa Anda Memerlukan Migrasi, Bukan create_all” gratis?
Ya — teks lengkap “Mengapa Anda Memerlukan Migrasi, Bukan create_all” 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 “Mengapa Anda Memerlukan Migrasi, Bukan create_all”?
Pahami risiko mengubah skema aktif secara manual. 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 1 dari 4.
Berapa lama pelajaran “Mengapa Anda Memerlukan Migrasi, Bukan create_all” 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
- Mengapa Anda Memerlukan Migrasi, Bukan create_all
- Inisialisasi dan Buat Migrasi Otomatis
- Terapkan dan Batalkan dengan upgrade
- Tinjau dan Edit Skrip yang Dihasilkan