Automatic Data Seeding/Migration for Django
Halo semua, kembali lagi dengan saya yang akan menjelaskan Automatic Data Seeding/Migration untuk framework Django. Sebelumnya sudah pada kenal saya kan? kalo belum, perkenalkan nama saya Ryan yang merupakan salah satu hacker dari kelompok PDB+R.
Data Migration
Migration merupakan suatu mekanisme pada django untuk menyimpan perubahan yang dilakukan pada model/database baik itu penambahan, penghapusan, atau pengeditan model ke skema database yang digunakan.
python manage.py makemigrations
python manage.py migrate
Dua perintah diatas adalah yang biasa digunakan dalam melakukan migrations. Perintah python manage.py makemigrations
digunakan untuk membuat migration baru berdasarkan perubahan yang dibuat pada model, sedangkan perintah python manage.py migrate
digunakan untuk mengaplikasikan migration ke database. Setiap migration akan membuat sebuah file migrasi yang memiliki penanda history migrasi dan membuat file migrasi baru yang ada pada file 0001initial.py pada masing-masing fitur.
Data Seeding
Setelah database terbentuk, maka kita bisa menyimpan data yang ada kedalam database tersebut. Data seeding merupakan suatu kegiatan untuk melakukan penambahan data awal pada database sebelum aplikasi dijalankan. Karena Django tidak mempunyai fitur penambahan otomatis, maka kami melakukan pembuatan data dummy.
Pada fitur ini diperlukan input data sebelum aplikasi dijalankan untuk membuat term aktif yaitu term yang sedang berjalan saat ini.
Data dummy hanya dapat digunakan pada environment development. Untuk environment production, data seeding yang digunakan harus merupakan data asli atau data yang diberikan oleh user atau stakeholder pada aplikasi tersebut.
Penutup
Menurut saya, Migration adalah salah satu fitur penting di Django. Migrations memiliki peran penting dalam operasional database, agar perubahan struktur database tidak memiliki efek samping pada data pengguna dan membuat database tetap teratur. Kita perlu mengetahui apa yang terjadi pada proses migration jika ingin membuat fungsi backend pada suatu aplikasi. Adapun data seeding adalah cara yang digunakan ketika kita membutuhkan data-data awal untuk menjalankan aplikasi yang kita buat.
Mungkin Data Migration, dan Data Seeding dari saya segini dulu, semoga tulisan saya ini bermanfaat buat kalian. Sampai jumpa lagi pada tulisan saya selanjutnya ya :)