Manajemen Settings di Django untuk Workflow yang Efisien

Di era workflow yang serba menggunakan git, sangat tidak lucu jika harus melakukan seremonial git (git push dan git pull) hanya untuk meng-update DEBUG=True ke DEBUG=False di file settings.py. Sementara beberapa baris di file ini sering berubah sesuai dengan kebutuhan konfigurasi aplikasi.

Bagaimana solusinya? Ada banyak sebenarnya, mulai dari membuat file yaml, ini, env, namun yang paling mudah menurut saya adalah dengan membuat file local_settings.py pada direktori yang sama dengan direktori di mana file settings.py berada. Baris-baris kode di local_settings berfungsi untuk meng-override kode di settings.py. Untuk itu, tambahkan baris berikut di settings.py bagian PALING BAWAH:


try:
from local_settings import *
except ImportError as e:
if "local_settings" not in str(e):
raise e

Selanjutnya mari kita override variabel DEBUG, perhatikan contoh berikut:
# settings.py
DEBUG = True
# local_settings.py
DEBUG = False

Maka jika kita memanggil settings.DEBUG, nilainya sekarang False. Agar perubahan di local_settings.py tidak di-index oleh git, tambahkan di .gitignore file local_settings.py

Nah dengan begini, workflow akan lebih efisien, dan Anda sebagai developer juga tidak perlu bolak-balik melakukan seremonial git yang tidak perlu.

Comments

Popular posts from this blog

Adding Image Alternate Text into WordPress Image Attachment using python-wordpress-xmlrpc Library

Keutamaan Tidur yang Sedikit Menurut para Ulama

Kisah Nabi Uzair a.s.