Heim > Backend-Entwicklung > Python-Tutorial > So laden Sie .env in Django Project

So laden Sie .env in Django Project

Barbara Streisand
Freigeben: 2024-11-29 00:15:16
Original
323 Leute haben es durchsucht

How to load .env in Django Project

Ich komme aus PHP und verwende hauptsächlich Laravel/Symfony. Vor kurzem habe ich angefangen, Django zu verwenden, und ich wollte die Art und Weise reproduzieren, wie Umgebungsvariablen über eine .env-Datei bereitgestellt werden.

Ich wollte, dass die .env-Datei geladen wird, sobald ich den Devserver starte, ohne dass ich mir darüber Gedanken machen muss. Deshalb habe ich diese Schritte befolgt:

Grundlegende Projekteinrichtung zur Demonstration

Erstellen Sie eine Basis-App (überspringen, wenn Django bereits eingerichtet ist)

Zu Beginn habe ich eine virtuelle Umgebung erstellt und ein Projekt eingerichtet.

mkdir myproject
cd myproject
python3 -m venv ./venv
echo vencv >> .gitignore
pip install Django
django-admin startproject mysite .
Nach dem Login kopieren

python-dotenv installieren (Überspringen, falls bereits erledigt)

pip install python-dotenv
Nach dem Login kopieren

Laden Sie die .env-Datei

Das Laden von Umgebungsvariablen aus einer .env-Datei ist mit python-dotenv einfach:

from dotenv import load_dotenv
load_dotenv()

Nach dem Login kopieren

Die Frage ist jedoch, WO dieser Code abgelegt werden soll. Es kann mühsam sein, jedes Mal die .env-Datei zu laden. Basierend auf dem zuvor erwähnten Setup hat mein Projekt die folgende Struktur erstellt (einige Dateien wurden der Einfachheit halber weggelassen):

myproject/
├── mysite/
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── .env
Nach dem Login kopieren

Wie Sie sehen können, wird das mysite-Verzeichnis als Modul geladen. Alle Umgebungsvariablen werden in der .env-Datei gespeichert. Um sie zu laden, habe ich den Code zur Datei mysite/__init__.py hinzugefügt:

from dotenv import load_dotenv
load_dotenv()
Nach dem Login kopieren

Dadurch wird sichergestellt, dass alle Umgebungsvariablen geladen werden, wenn ich Folgendes ausführe:

python manage.py runserver
Nach dem Login kopieren

Nachteile

Der Nachteil dieses Ansatzes besteht darin, dass ich, wenn ich Änderungen an der .env-Datei vornehme, den Server stoppen und neu starten muss, um die Umgebungsvariablen neu zu laden.

Das obige ist der detaillierte Inhalt vonSo laden Sie .env in Django Project. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage