網站首頁 編程語言 正文
DJANGO_SETTINGS_MODULE
使用Django時要通知Django當前使用的是哪個配置文件。可以改變環境變量 DJANGO_SETTINGS_MODULE 實現這一點。
當我們使用manage.py運行起本地的web服務器時,為了讓Django知道使用哪個配置文件,就指定了DJANGO_SETTINGS_MODULE的環境變量的路徑,我們看下manage.py
import os import sys if __name__ == "__main__": ?? ?# test1是我的主應用名字 ? ? os.environ.setdefault("DJANGO_SETTINGS_MODULE", "test1.settings") ? ? try: ? ? ? ? from django.core.management import execute_from_command_line ? ? except ImportError: ? ? ? ? # The above import may fail for some other reason. Ensure that the ? ? ? ? # issue is really that Django is missing to avoid masking other ? ? ? ? # exceptions on Python 2. ? ? ? ? try: ? ? ? ? ? ? import django ? ? ? ? except ImportError: ? ? ? ? ? ? raise ImportError( ? ? ? ? ? ? ? ? "Couldn't import Django. Are you sure it's installed and " ? ? ? ? ? ? ? ? "available on your PYTHONPATH environment variable? Did you " ? ? ? ? ? ? ? ? "forget to activate a virtual environment?" ? ? ? ? ? ? ) ? ? ? ? raise ? ? execute_from_command_line(sys.argv)
Django的設置和配置。
值將從DJANGO_SETTINGS_MODULE環境指定的模塊中讀取
變量,然后從django.conf.global_settings(此為django的默認設置)
為什么不能用import settings
import settings will import the first python module named settings.py found in sys.path, usually (in default django setups). It allows access only to your site defined settings file, which overwrites django default settings (django.conf.global_settings).So, if you try to access a valid django setting not specified in your settings file you will get an error.django.conf.settings is not a file but a class making an abstraction of the concepts, default settings and your site-specific settings. Django also does other checks when you use from django.conf import settings.from django.conf import settings 是更好的選擇
import settings將導入sys中第一個名為settings.py的python模塊。通常(在默認的django設置中)。它只允許訪問站點定義的設置文件,該文件覆蓋django的默認設置(django.conf.global_settings
)。
因此,如果嘗試訪問未在設置文件中指定的有效django設置,將會得到一個錯誤。
django.conf.settings 不是一個文件,而是一個抽象概念、默認設置和站點特定設置的類。當您使用from django.conf import settings,Django還會執行其他檢查。
from django.conf import settings是更好的選擇
Django settings詳解
1.基礎
DJANGO_SETTING_MODULE環境變量:讓settings模塊被包含到python可以找到的目錄下,開發情況下不需要,我們通常會在當前文件夾運行,python可以搜索到。如果需要運行在其他服務器上,就必須指定DJANGO_SETTINGS_MODULE變量。
2.默認設定
一個django的settings文件不需要我們手動去設置所有項目,因為系統已經默認設置好了。我們只需要修改我們使用的設
定就好了。默認的設置在django/conf/global_settings.py文件中。django在編譯時,先載入global_settings.py中的配置,然后加載指定的settings文件,重寫改變的設定。
原文鏈接:https://blog.csdn.net/weixin_44984864/article/details/106635015
相關推薦
- 2022-12-08 python?datetime?和時間戳互相轉換問題_python
- 2022-10-16 python中列表添加元素的幾種方式(+、append()、extend())_python
- 2022-04-25 C#中使用DevExpress中的ChartControl實現極坐標圖的案例詳解_C#教程
- 2022-05-15 Web?API身份認證解決方案之Basic基礎認證_實用技巧
- 2022-06-12 C語言詳解熱門考點結構體內存對齊_C 語言
- 2022-09-14 Python最好的日期處理庫pendulum的使用指南_python
- 2022-10-14 Transformer解讀之:Transformer 中的 Attention 機制
- 2022-07-06 React創建對話框組件的方法實例_React
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支