Menukar Model dan Melakukan Migrasi Semula
Tambah medan dan masukkan perubahan ke dalam DB.
Menukar Model dan Melakukan Migrasi Semula ialah pelajaran Django Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Django Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Django Academy merangkumi sejumlah 4 pelajaran.
Model Berkembang
Aplikasi sebenar berubah. Apabila sesuatu ciri memerlukan lajur baharu, anda mengedit model dan membiarkan Migration membawa perubahan itu ke pangkalan data.
Langkah 1: Edit Model
Mulakan dengan menambah medan dalam kelas model anda. Di sini anda memberikan Post penanda published dengan nilai lalai yang munasabah.
class Post(models.Model):
title = models.CharField(max_length=200)
published = models.BooleanField(default=False)Langkah 2: makemigrations
Jalankan makemigrations. Django membandingkan model baharu dengan model sebelumnya dan menulis Migration baharu untuk medan yang ditambah.
python manage.py makemigrationsLangkah 3: migrate
Jalankan migrate untuk menggunakan fail baharu itu. Lajur tersebut kini wujud dalam jadual sebenar dan sedia digunakan.
python manage.py migrateNilai Lalai Mengisi Baris Lama
Menambah medan yang tidak boleh kosong pada jadual berisi memerlukan nilai untuk baris sedia ada. default mengisinya dengan kemas.
Tiada Nilai Lalai? Django Bertanya
Tanpa nilai lalai, makemigrations berhenti dan meminta anda memberikan nilai one-off untuk baris sedia ada sebelum meneruskan.
Setiap Perubahan Ialah Fail Baharu
Django tidak pernah mengedit Migration lama. Setiap perubahan model menjadi fail bernombor baharu yang disusun di atas fail terakhir.
Menamakan Semula Medan
Namakan semula medan dan Django mungkin bertanya sama ada anda menamakannya semula, bukannya memadam lalu menambahnya semula. Jawab ya untuk mengekalkan data lajur.
Mengalih Keluar Medan
Padam medan daripada model, kemudian makemigrations menulis langkah RemoveField. Gunakannya dan lajur itu akan hilang selama-lamanya.
Membalikkan Migration
Untuk membuat asal, kembali ke nombor yang lebih awal menggunakan migrate. Django menjalankan Migration secara songsang untuk memulihkan skema sebelumnya.
python manage.py migrate blog 0001Lakukan Commit pada Fail
Sentiasa lakukan commit pada Migration baharu bersama-sama suntingan model anda. Rakan sepasukan menjalankan migrate dan memperoleh skema yang sama tanpa kejutan.
Semakan Pantas
Anda menambah medan yang diperlukan pada jadual yang sudah mempunyai baris. Apakah yang diperlukan oleh Django?
Ringkasan
Gelungnya mudah: edit model, makemigrations, migrate, commit. Setiap perubahan menjadi fail baharu, jadi sejarah anda kekal tepat. ✅
Pelajari Python dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Soalan Lazim
Adakah pelajaran “Menukar Model dan Melakukan Migrasi Semula” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Django Academy, termasuk “Menukar Model dan Melakukan Migrasi Semula”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Django Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Menukar Model dan Melakukan Migrasi Semula”?
Tambah medan dan masukkan perubahan ke dalam DB. Anda berlatih Django Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Django Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Django Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Menukar Model dan Melakukan Migrasi Semula” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Django Academy ini?
Ya. Setiap pelajaran Django Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- makemigrations vs migrate
- Membaca File Migrasi
- Menukar Model dan Melakukan Migrasi Semula
- sqlmigrate dan Memeriksa SQL