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文件,重寫改變的設定。
好了,步入正文。
前面的隨筆中我們經常會改setting配置也經常將一些配置混淆今天主要是將一些常見的配置做一個匯總。
setting配置匯總
1、app路徑
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app1.apps.App1Config', # 默認已有 如果沒有只要添加app名稱即可 例如: 'app1' # 新建的應用都要在這里添加]
2、數據庫配置
如果使用django的默認sqlite3數據庫則不需要改
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), }}如果使用mysql數據庫需要將上述數據庫注掉修改如下
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'blog', #你的數據庫名稱 數據庫需要自己提前建好 'USER': 'root', #你的數據庫用戶名 'PASSWORD': '', #你的數據庫密碼 'HOST': '', #你的數據庫主機,留空默認為localhost 'PORT': '3306', #你的數據庫端口 }}并且需要在應用的__init__.py文件添加
import pymysqlpymysql.install_as_MySQLdb()
詳情可以查看://www.jb51.net/article/128674.htm
3、sql語句
LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'level':'DEBUG', 'class':'logging.StreamHandler', }, }, 'loggers': { 'django.db.backends': { 'handlers': ['console'], 'propagate': True, 'level':'DEBUG', }, }} 當你的操作與數據庫相關時 會將我們的寫的語句翻譯成sql語句在服務端打印。
4、靜態文件目錄
STATIC_URL = '/static/' #調用時目錄STATICFILES_DIRS=[ os.path.join(BASE_DIR,"static"), #具體路徑]
5、如果數據庫中的UserInfo(用戶表)繼承django內置AbstractUser
1)model需導入
from django.contrib.auth.models import AbstractUser
2)配置文件
AUTH_USER_MODEL = "應用名.UserInfo"
新聞熱點
疑難解答