Syntax | سینتکس
3.02K subscribers
410 photos
108 videos
35 files
377 links
Download Telegram
پکیج `python-decouple`

یک ابزار مفید برای جداسازی تنظیمات و پیکربندی‌های پروژه‌های پایتون است. این کار باعث می‌شود که کد شما از وابستگی‌های محیطی جدا باشد و تنظیمات را به راحتی تغییر دهید بدون اینکه نیاز به تغییر در کد داشته باشید. این پکیج به خصوص برای مدیریت متغیرهای محیطی و تنظیمات حساس مانند کلیدهای API، اطلاعات پایگاه داده و غیره بسیار مفید است.

ویژگی‌ها
- مدیریت متغیرهای محیطی: متغیرهای محیطی را از فایل .env بارگذاری می‌کند.
- پشتیبانی از انواع داده‌ها: قابلیت تبدیل مقادیر متغیرها به انواع داده‌ای مختلف مانند int`، `float`، `bool و ...
- مقدار پیش‌فرض: امکان تعریف مقادیر پیش‌فرض برای متغیرهایی که ممکن است در محیط تنظیم نشده باشند.

نصب

برای نصب پکیج python-decouple می‌توانید از دستور زیر استفاده کنید:
pip install python-decouple


نحوه استفاده

1. ایجاد فایل `.env`:
ابتدا یک فایل با نام .env در ریشه پروژه خود ایجاد کنید و تنظیمات مورد نظر خود را در آن وارد کنید. برای مثال:

   DEBUG=True
SECRET_KEY=mysecretkey
DATABASE_URL=postgres://user:password@localhost:5432/mydatabase


2. استفاده از `config` در کد پایتون:
در کد پایتون خود، پکیج decouple را وارد کرده و از Config استفاده کنید:

   from decouple import config

DEBUG = config('DEBUG', default=False, cast=bool)
SECRET_KEY = config('SECRET_KEY')
DATABASE_URL = config('DATABASE_URL')


3. توضیحات بیشتر:
- config('DEBUG', default=False, cast=bool):
این خط مقدار متغیر DEBUG را از فایل .env می‌خواند و آن را به نوع bool تبدیل می‌کند. اگر این متغیر در فایل .env موجود نباشد، مقدار پیش‌فرض False استفاده می‌شود.
- config('SECRET_KEY'):
این خط مقدار متغیر SECRET_KEY را از فایل .env می‌خواند.
- config('DATABASE_URL'):
این خط مقدار متغیر DATABASE_URL را از فایل .env می‌خواند.

مثال کامل

فرض کنید یک پروژه ساده دارید که از Flask استفاده می‌کند و می‌خواهید تنظیمات خود را با استفاده از python-decouple مدیریت کنید.

1. ایجاد فایل `.env`:

   DEBUG=True
SECRET_KEY=mysecretkey
DATABASE_URL=sqlite:///mydatabase.db


2. کد پایتون:

   from flask import Flask
from decouple import config

app = Flask(__name__)

app.config['DEBUG'] = config('DEBUG', default=False, cast=bool)
app.config['SECRET_KEY'] = config('SECRET_KEY')
app.config['SQLALCHEMY_DATABASE_URI'] = config('DATABASE_URL')

@app.route('/')
def home():
return "Hello, World!"

if __name__ == '__main__':
app.run()


این کد یک برنامه ساده Flask ایجاد می‌کند که تنظیمات خود را از فایل .env می‌خواند. با این کار، می‌توانید به راحتی تنظیمات خود را تغییر دهید بدون اینکه نیاز به تغییر در کد داشته باشید.

#python_decouple

@Syntax_fa
👍3🔥21👌1