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

如何在 Django 專案中載入 .env

Barbara Streisand
發布: 2024-11-29 00:15:16
原創
243 人瀏覽過

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中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板