Django

⌘K
  1. Home
  2. Django
  3. Django তে কিভাবে কাজ করতে...
  4. Django তে environment ভেরিয়েবল ব্যবহার

Django তে environment ভেরিয়েবল ব্যবহার

Django প্রকল্পে নিরাপদ এবং স্থিতিশীল পরিবেশ সেটআপের জন্য পরিবেশ ভেরিয়েবলের ব্যবহার অত্যন্ত গুরুত্বপূর্ণ। পরিবেশ ভেরিয়েবল ব্যবহার করার মাধ্যমে সংবেদনশীল তথ্য যেমন ডাটাবেসের পাসওয়ার্ড, API কী, ইমেইল কনফিগারেশন গোপন রাখা যায় এবং প্রকল্পের বিভিন্ন পরিবেশ (উন্নয়ন, পরীক্ষা, প্রোডাকশন) অনুযায়ী সেটিংস সহজে কাস্টমাইজ করা যায়।


Django তে পরিবেশ ভেরিয়েবল ব্যবহারের ধাপসমূহ

ধাপ ১: python-decouple প্যাকেজ ইনস্টল করুন

python-decouple একটি সহজ প্যাকেজ, যা পরিবেশ ভেরিয়েবল ব্যবহারে সাহায্য করে।

pip install python-decouple

ধাপ ২: .env ফাইল তৈরি করুন

আপনার Django প্রকল্পের মূল ডিরেক্টরিতে (যেখানে settings.py ফাইল রয়েছে) একটি .env ফাইল তৈরি করুন।

.env ফাইলের উদাহরণ:

# ডাটাবেস কনফিগারেশন
DB_NAME=my_database
DB_USER=my_user
DB_PASSWORD=my_secure_password
DB_HOST=localhost
DB_PORT=5432

# ইমেইল কনফিগারেশন
EMAIL_HOST=smtp.gmail.com
EMAIL_PORT=587
EMAIL_HOST_USER=my_email@gmail.com
EMAIL_HOST_PASSWORD=my_email_password
EMAIL_USE_TLS=True

# গোপন কী
SECRET_KEY=my_super_secret_key

ধাপ ৩: settings.py ফাইলে পরিবেশ ভেরিয়েবল আমদানি করুন

python-decouple ব্যবহার করে .env ফাইল থেকে পরিবেশ ভেরিয়েবলগুলো আমদানি করুন।

# settings.py

from decouple import config

# SECRET_KEY পরিবেশ ভেরিয়েবল থেকে পড়া হচ্ছে
SECRET_KEY = config('SECRET_KEY')

# ডাটাবেস সেটআপ
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': config('DB_NAME'),
        'USER': config('DB_USER'),
        'PASSWORD': config('DB_PASSWORD'),
        'HOST': config('DB_HOST'),
        'PORT': config('DB_PORT'),
    }
}

# ইমেইল কনফিগারেশন
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = config('EMAIL_HOST')
EMAIL_PORT = config('EMAIL_PORT', cast=int)  # ইন্টিজার টাইপে রূপান্তর
EMAIL_HOST_USER = config('EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = config('EMAIL_HOST_PASSWORD')
EMAIL_USE_TLS = config('EMAIL_USE_TLS', cast=bool)  # বুলিয়ান টাইপে রূপান্তর

ব্যাখ্যা

  • from decouple import config: এটি python-decouple প্যাকেজ থেকে config ফাংশনটি আমদানি করে, যা পরিবেশ ভেরিয়েবল পড়তে ব্যবহৃত হয়।
  • config('VARIABLE_NAME'): এটি .env ফাইল থেকে নির্দিষ্ট ভেরিয়েবলের মান পড়ে।
  • cast=int বা cast=bool: ভেরিয়েবলের ডেটা টাইপ নির্দিষ্ট করতে ব্যবহৃত হয়, যেমন ইন্টিজার বা বুলিয়ান।

উদাহরণ: পরিবেশ ভেরিয়েবল ব্যবহার

পরিবেশ ভেরিয়েবল সেটআপ করার সুবিধা:

  1. নিরাপত্তা বৃদ্ধি: সংবেদনশীল তথ্য কোডবেসে সরাসরি না রেখে গোপন রাখা যায়।
  2. সহজ কনফিগারেশন: প্রকল্পের বিভিন্ন পরিবেশ অনুযায়ী কনফিগারেশন সহজেই পরিবর্তন করা যায়।

পরিবেশ ভেরিয়েবল সেটআপ করার পরামর্শ

  • .env ফাইলটি সর্বদা .gitignore এ যোগ করুন, যাতে এটি আপনার ভার্সন কন্ট্রোল সিস্টেমে (যেমন, GitHub) আপলোড না হয়।
  • প্রোডাকশনে ডিপ্লয়ের সময় পরিবেশ ভেরিয়েবল সঠিকভাবে কনফিগার করুন।

.gitignore ফাইলে .env যোগ করুন:

# .gitignore

.env

How can we help?