پیکربندی پروژه جنگو برای ذخیره داده های حساس در فایل YAML

Summarize this content to 400 words in Persian Lang
رمزگذاری هاردکدینگ، اعتبار پایگاه داده و سایر داده های حساس در فایل های .py ایمن نیست. بسیاری از مردم از کتابخانه django-environ استفاده می کنند، اما به نظر من ناخوشایند است. بنابراین من از فایل های yaml برای ذخیره داده های حساس و کتابخانه pyyaml برای خواندن داده های آنها استفاده می کنم.
ایجاد پوشه پروژه:
mkdir myproject
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
وارد پوشه ایجاد شده:
cd myproject
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
ایجاد محیط مجازی:
python3 -m venv env
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
فعال کردن محیط مجازی:
source env/bin/activate
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
Django و pyyaml را نصب کنید:
pip3 install django pyyaml
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
شروع پروژه جدید جنگو:
django-admin startproject myproject .
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
ایجاد کنید settings.yaml فایل نزدیک به settings.py فایل:
touch myproject/settings.yaml
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
درج واردات در ابتدای settings.py فایل:
import os
import yaml
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
درج کد برای خواندن از settings.yaml فایل:
with open(os.path.join(str(Path(__file__).resolve().parent), ‘settings.yaml’), ‘r’) as settingsfile:
settings = yaml.safe_load(settingsfile)
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
درج کد برای خواندن از settings.yaml فایل:
SECRET_KEY = settings[‘SECRET_KEY’]
DEBUG = settings[‘DEBUG’]
ALLOWED_HOSTS = settings[‘ALLOWED_HOSTS’]
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.postgresql’,
‘NAME’: settings[‘DATABASES’][‘NAME’],
‘USER’: settings[‘DATABASES’][‘USER’],
‘PASSWORD’: settings[‘DATABASES’][‘PASSWORD’],
‘HOST’: settings[‘DATABASES’][‘HOST’],
‘PORT’: settings[‘DATABASES’][‘PORT’],
}
}
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
تنظیمات را وارد کنید settings.yaml:
SECRET_KEY: ‘your-secret-token’
DEBUG: true
ALLOWED_HOSTS:
– 127.0.0.1
– localhost
– 0.0.0.0
DATABASES:
NAME: ‘database_name’
USER: ‘database_user’
PASSWORD: ‘password’
HOST: ‘127.0.0.1’
PORT: ‘5432’
وارد حالت تمام صفحه شوید
از حالت تمام صفحه خارج شوید
رمزگذاری هاردکدینگ، اعتبار پایگاه داده و سایر داده های حساس در فایل های .py ایمن نیست. بسیاری از مردم از کتابخانه django-environ استفاده می کنند، اما به نظر من ناخوشایند است. بنابراین من از فایل های yaml برای ذخیره داده های حساس و کتابخانه pyyaml برای خواندن داده های آنها استفاده می کنم.
ایجاد پوشه پروژه:
mkdir myproject
وارد پوشه ایجاد شده:
cd myproject
ایجاد محیط مجازی:
python3 -m venv env
فعال کردن محیط مجازی:
source env/bin/activate
Django و pyyaml را نصب کنید:
pip3 install django pyyaml
شروع پروژه جدید جنگو:
django-admin startproject myproject .
ایجاد کنید settings.yaml
فایل نزدیک به settings.py
فایل:
touch myproject/settings.yaml
درج واردات در ابتدای settings.py
فایل:
import os
import yaml
درج کد برای خواندن از settings.yaml
فایل:
with open(os.path.join(str(Path(__file__).resolve().parent), 'settings.yaml'), 'r') as settingsfile:
settings = yaml.safe_load(settingsfile)
درج کد برای خواندن از settings.yaml
فایل:
SECRET_KEY = settings['SECRET_KEY']
DEBUG = settings['DEBUG']
ALLOWED_HOSTS = settings['ALLOWED_HOSTS']
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': settings['DATABASES']['NAME'],
'USER': settings['DATABASES']['USER'],
'PASSWORD': settings['DATABASES']['PASSWORD'],
'HOST': settings['DATABASES']['HOST'],
'PORT': settings['DATABASES']['PORT'],
}
}
تنظیمات را وارد کنید settings.yaml
:
SECRET_KEY: 'your-secret-token'
DEBUG: true
ALLOWED_HOSTS:
- 127.0.0.1
- localhost
- 0.0.0.0
DATABASES:
NAME: 'database_name'
USER: 'database_user'
PASSWORD: 'password'
HOST: '127.0.0.1'
PORT: '5432'