🍉 pycharm中打开Django项目并配置虚拟环境运行项目
🍈 打开项目后pycharm自动识别配置项目运行环境
🍍 指定项目运行的端口号
🍈 自行配置项目的运行环境
如果没有自动识别并配置项目的运行环境,可以手动为打开的django项目配置运行环境。
🍍 配置项目的python解释器
🍍 配置Django项目运行配置运行项目
🍍 配置python运行脚本运行项目
🍉 项目路径BASE_DIR
项目路径BASE_DIR在创建项目时自动生成,一般情况下我们不需要进行修改。
创建项目时自动生成的项目路径BASE_DIR指向项目的根目录。
# Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent print(BASE_DIR) # 查看BASE_DIR
🍉 密钥配置SECRET_KEY
密钥配置SECRET_KEY这是一个随机值,在项目创建时自动生成,一般情况下不用进行修改。
# SECURITY WARNING: keep the secret key used in production secret! SECRET_KEY = 'django-insecure-kja6l$dx5*zcpn^mfg&3o5dh7e*p3qd+d%6rf(1cd6=ob48u1c'
密钥配置SECRET_KEY主要用于重要数据的加密处理,提高项目的安全性,避免遭受攻击者恶意破坏。密钥配置SECRET_KEY主要用于用户密码、CSRF机制、会话Session等数据加密。
用户密码:Django内置一套Auth认证系统,该系统具有用户认证和存储用户信息等功能,在创建用户的时候,将用户密码通过密钥进行加密处理,保证用户的安全性。
CSRF机制:该机制主要用于表单提交,防止窃取网站的用户信息来制造恶意请求。
会话Session:Session的信息存放在Cookie中,以一串随机的字符串表示,用于标识当前访问网站的用户身份,记录相关用户信息。
🍉 调试模式DEBUG
该配置项的取值为布尔类型。
如果在开发调试阶段,该配置项应设置为True,在开发调试过程中会自动检测代码是否发生更改,根据检测结果执行是否刷新重启系统。
如果项目部署上线,该配置项应改为False,防止会泄漏项目的相关信息。
默认情况下,在创建项目之后,该配置项的取值默认为True。
# SECURITY WARNING: don't run with debug turned on in production! DEBUG = True
🍉 域名访问权限ALLOWED_HOSTS
该配置项可以设置浏览器可以以什么域名访问到该Django项目,默认值为空列表。
ALLOWED_HOSTS = []
当DEBUG配置项的取值为True时,并且ALLOWED_HOSTS配置项为空列表时,该项目只允许以localhost或127.0.0.1在浏览器上访问。
如果当DEBUG配置项的取值为True时需要使得浏览器能够以其他ip地址或域名访问该Django项目,可以在ALLOWED_HOSTS配置项中添加相应的ip地址或域名,添加的ip地址或域名的形式为字符串类型。
# SECURITY WARNING: don't run with debug turned on in production! DEBUG = True ALLOWED_HOSTS = [ '10.1.109.25' ]
当DEBUG配置项的取值为False时,ALLOWED_HOSTS为必填项,否则程序无法启动。
# SECURITY WARNING: don't run with debug turned on in production! # DEBUG = True DEBUG = False ALLOWED_HOSTS = []
DEBUG配置项的取值为False时,如果想允许浏览器以所有能访问到该项目的域名访问该Django项目,可以设置ALLOW_HOSTS = ['*']
;
# SECURITY WARNING: don't run with debug turned on in production! # DEBUG = True DEBUG = False # ALLOWED_HOSTS = [ # '10.1.109.25' # ] ALLOWED_HOSTS = ['*']
DEBUG配置项的取值为False时,如果只想允许某些ip地址或域名能够访问到该项目的ip地址或域名,在ALLOWED_HOSTS配置项中配置能访问到该项目的ip地址或域名即可。
# SECURITY WARNING: don't run with debug turned on in production! # DEBUG = True DEBUG = False ALLOWED_HOSTS = [ '10.1.109.25' ] # ALLOWED_HOSTS = ['*']
🍉 子应用列表INSTALLED_APPS
该配置项用于告诉Django本项目有哪些子应用。
在项目创建时,该配置项默认已有admin、auth、sessions等配置信息。
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ]
这些都是Django内置的应用功能,各个功能说明如下:
● admin:内置的后台管理系统。
● auth:内置的用户认证系统。
● contenttypes:记录项目中所有model元数据(Django的ORM框架)。
● sessions:Session会话功能,用于标识当前访问网站的用户身份,记录相关用户信息。
● messages:消息提示功能。
● staticfiles:查找静态资源路径。
如果在项目中创建了自己的子应用,就必须在子应用列表INSTALLED_APPS中添加自己创建的子应用的配置。
将项目中自己创建的子应用添加到子应用列表中,注册子应用,代码如下:
创建的子应用名为:test_app
# 写法一: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # '子应用名' 'test_app' # 注册自定义子应用 ]
# 写法二: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # '子应用名.apps.apps中的类名' 'test_app.apps.TestAppConfig' # 注册自定义子应用 ]
🍉 静态资源路由STATIC_URL
静态资源指的是网站中不会改变的文件,在一般的应用程序中,静态资源包括CSS文件、JavaScript文件以及图片等资源文件。静态资源的存放主要由配置文件settings.py中STATIC_URL配置项设置。
静态资源路由STATIC_URL是设置静态资源的路由地址,其作用是使浏览器能够通过路由访问Django的静态资源。
Django默认配置信息:
# Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/4.1/howto/static-files/ STATIC_URL = 'static/'
默认配置下,Django只能识别项目子应用的static文件夹里面的静态资源。
由于配置文件中 STATIC_URL = 'static/'
,所以访问静态资源需要通过http://ip地址:端口号/static/静态资源路径
进行静态资源的访问。
在test_app中创建static文件夹,并放置图片;在项目根目录下创建static文件夹,并放置图片。然后访问静态资源。
注意,此时静态资源路由STATIC_URL只能为static/
,且子应用中的静态资源文件夹的文件夹名只能为static,否则会找不到静态资源。