Belajar Menerapkan Flask Configuration

Kondisi:

Server:

menggunakan mongodb authentication

Localhost:

mongodb tanpa authentication

Awalnya cukup merepotkan, karena harus melakukan hardcode, namun setelah baca-baca lagi, dokumentasi, ada teknik konfigurasi yang manjur.

app 
    --- __init__.py
    --- views.py
    --- config/
        --- config.py
        --- __init__.py

Didalam config.py, masukkan konfig berikut:

class Config(object):
    DEBUG = False

class ProductionConfig(Config):
    MONGODB_USERNAME = "username"
    MONGODB_PASSWORD = "password"

class DevelopmentConfig(Config):
    DEBUG = True

class TestingConfig(Config):
    TESTING = True

Kemudian di file __init__.py yang ada di direktori app, tambahkan baris berikut:

app.config.from_object('app.config.config.ProductionConfig')

Biar lebih modular lagi, saya disini menggunakan python-decouple, dan menambahkan di berkas .env saya

ENVIRON=app.config.config.ProductionConfig

Sehingga baris yang kita tambahkan di berkas __init__.py di direktori app tadi, berubah menjadi:

from decouple import config


app.config.from_object(config("ENVIRON"))

Tentunya Anda butuh menambahkan library python-decouple terlebih dahulu:

pip install python-decouple

Dan… success… Meski begitu, saya kurang tau apa ini termasuk best practice apa bukan, mohon bimbingan dan pencerahan dari pembaca sekalian..

 

Terima kasih..

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s