首頁 >後端開發 >Python教學 >如何在 Django 專案中載入 .env

如何在 Django 專案中載入 .env

Barbara Streisand
Barbara Streisand原創
2024-11-29 00:15:16246瀏覽

How to load .env in Django Project

我有 PHP 背景,主要使用 Laravel/Symfony。最近,我開始使用 Django,我想重現透過 .env 檔案提供環境變數的方式。

我希望在啟動開發伺服器後載入 .env,而不必擔心它。因此我按照以下步驟操作:

用於演示的基本項目設置

製作一個基本應用程式(如果 Django 已設置,則跳過)

首先,我建立了一個虛擬環境,設定了一個專案。

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

安裝 python-dotenv (如果已完成則跳過)

pip install python-dotenv

載入.env文件

使用 python-dotenv 從 .env 檔案載入環境變數很簡單:

from dotenv import load_dotenv
load_dotenv()

問題是在哪裡放置此程式碼。每次載入 .env 檔案可能會很乏味。根據我之前提到的設置,我的專案創建了以下結構(為簡單起見,省略了一些文件):

myproject/
├── mysite/
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── .env

如您所見,mysite 目錄會作為模組載入。所有環境變數都儲存在 .env 檔案中。為了加載它們,我將程式碼新增至 mysite/__init__.py 檔案:

from dotenv import load_dotenv
load_dotenv()

這確保了每當我運行時都會加載所有環境變數:

python manage.py runserver

缺點

這種方法的缺點是,如果我對 .env 檔案進行任何更改,我必須停止並重新啟動伺服器以重新載入環境變數。

以上是如何在 Django 專案中載入 .env的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn