django配置DJANGO_SETTINGS_MODULE的实现
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文件,重写改变的设定。
到此这篇关于django配置DJANGO_SETTINGS_MODULE的文章就介绍到这了,更多相关django配置DJANGO_SETTINGS_MODULE内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Python中Pickling和Unpickling的区别详解
在本文中,我们将探讨 Python 中 pickling 和 unpickling 之间的主要区别,我们将详细讨论 Python pickling 和 unpickling 的概念,包括它们的目的、语法、用法以及安全可靠的 pickling 和 unpickling 操作的注意事项,需要的朋友可以参考下2023-09-09使用memory_profiler监测python代码运行时内存消耗方法
今天小编就为大家分享一篇使用memory_profiler监测python代码运行时内存消耗方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-12-12Python使用Webargs实现简化Web应用程序的参数处理
在开发Web应用程序时,参数处理是一个常见的任务,Python的Webargs模块为我们提供了一种简单而强大的方式来处理这些参数,下面我们就来学习一下具体操作吧2024-02-02django数据库报错解决汇总:django.db.utils.OperationalError 1045,1049,
这篇文章主要给大家介绍了关于django数据库报错解决:django.db.utils.OperationalError 1045,1049,2003的相关资料,文中将解决的办法介绍的非常详细,需要的朋友可以参考下2023-02-02
最新评论