Automatic data seeding for your django application

Kevin Prakasa
PPL SeLaw
Published in
2 min readMay 29, 2019

Apa itu data seeding?

Pernahkah kalian membuat suatu aplikasi yang mana aplikasi tersebut membutuhkan data? Pasti data selalu hilang setiap kali kalian inisiasi aplikasi kalian yang baru, yang mana membuat kalian harus memasukkan data-datanya kembali dan berulang kali. Yah itu cukup menyebalkan dan membutuhkan usaha yang besar. Maka dari itu ada suatu cara yang dinamakan data seeding yang mana akan mengerjakan tugas-tugas untuk meng-setup data-data untuk aplikasi kalian. Nah kali ini saya akan menjelaskan cara untuk data seeding di django application yah.

Bagaimana cara melakukan data seeding?

Data seeding selalu membutuhkan fixtures atau catatan data yang ada di database. Fixtures ini biasa berupa JSON atau YAML, yang mana kalian bisa buat ini manual dengan membuat sendiri atau dengan automatis (dengan command python manage.py dumpdata). Yang akan saya jelaskan disini adalah cara yang otomatis yaitu dengan menggunakan command bawaan django.

Untuk membuat fixtures secara otomatis, django akan mengambil semua data yang ada di database yang akan diubah menjadi fixtures, yang mana nantinya fixtures ini dapat di load data sehingga akan masuk ke aplikasi kita nantinya.

Maka itu langkah langkah untuk menerapkan data seeding adalah sebagai berikut:

  1. Masukkan data-data yang anda perlukan di django app anda, dan pastikan app anda sudah terisi dengan data-data yang anda ingin seeding atau perlukan.
  2. Jalankan command “python manage.py dumpdata seed.json” yang mana perintah ini akan membuat sebuah file seed.json yang merupakan fixtures yang akan di perlukan di load data nantinya
Isi dari seed.json

3. Fixtures anda telah terbuat di seed.json yang mana nantinya bisa digunakan dengan command “python manage.py loaddata seed.json” di aplikasi yang baru.

Sampai sekarang anda sudah membuat fixtures yang dibutuhkan di data seeding, nantinya ketika anda membuat aplikasi baru, anda cukup menjalankan “python manage.py loaddata <fileseed>”. Setelah anda menjalankan command tersebut, data akan terisi secara otomatis di aplikasi anda, sehingga anda tidak perlu repot-repot untuk memasukkan datanya satu-satu.

Sekian penjelasan dari saya mengenai data seeding di aplikasi django. Semoga bermanfaat buat kalian semua para pembacaqu, Happy life, happy coding! bye!

--

--

Kevin Prakasa
PPL SeLaw

Studying CS at University of Indonesia | Front-End Developer at my own company