[Python]Django 配置和静态文件(一)

简介: [Python]Django 配置和静态文件

🍉 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,否则会找不到静态资源。

相关文章
|
5月前
|
监控 安全 程序员
Python日志模块配置:从print到logging的优雅升级指南
从 `print` 到 `logging` 是 Python 开发的必经之路。`print` 调试简单却难维护,日志混乱、无法分级、缺乏上下文;而 `logging` 支持级别控制、多输出、结构化记录,助力项目可维护性升级。本文详解痛点、优势、迁移方案与最佳实践,助你构建专业日志系统,让程序“有记忆”。
435 0
|
9月前
|
关系型数据库 MySQL 数据库连接
Django数据库配置避坑指南:从初始化到生产环境的实战优化
本文介绍了Django数据库配置与初始化实战,涵盖MySQL等主流数据库的配置方法及常见问题处理。内容包括数据库连接设置、驱动安装、配置检查、数据表生成、初始数据导入导出,并提供真实项目部署场景的操作步骤与示例代码,适用于开发、测试及生产环境搭建。
429 1
|
6月前
|
JSON 缓存 开发者
淘宝商品详情接口(item_get)企业级全解析:参数配置、签名机制与 Python 代码实战
本文详解淘宝开放平台taobao.item_get接口对接全流程,涵盖参数配置、MD5签名生成、Python企业级代码实现及高频问题排查,提供可落地的实战方案,助你高效稳定获取商品数据。
|
7月前
|
JavaScript 前端开发 机器人
【Azure Bot Service】在中国区Azure上部署机器人的 Python 版配置
本文介绍了在中国区Azure上使用Python SDK配置Azure Bot Service时遇到的问题及解决方案,涵盖参数设置与适配器配置,适用于希望在Azure中国区部署Python机器人的开发者。
207 8
|
8月前
|
存储 前端开发 应用服务中间件
Django 实战:静态文件与媒体文件从开发配置到生产部署
Django项目中,静态文件(Static Files)和媒体文件(Media Files)是两类不同用途的文件。本文详细介绍了它们的区别、配置方法以及在开发与生产环境中的处理方式,并结合用户头像上传功能进行实战演示,最后讲解了如何通过Nginx或OpenResty部署静态与媒体文件服务。
422 1
|
11月前
|
IDE 开发工具 开发者
手把手教你安装PyCharm 2025:开发者的Python IDE配置全流程+避坑指南
本教程详细介绍了PyCharm 2025版本在Windows系统下的安装流程及配置方法,涵盖AI代码补全与智能调试工具链等新功能。内容包括系统要求、安装步骤、首次运行配置(如主题选择与插件安装)、创建首个Python项目,以及常见问题解决方法。此外,还提供了切换中文界面和延伸学习资源的指导,帮助用户快速上手并高效使用PyCharm进行开发。
5461 61
|
10月前
|
Python
在VScode环境下配置Python环境的方法
经过上述步骤,你的VSCode环境就已经配置好了。请尽情享受这扇你为自己开启的知识之窗。如同你在冒险世界中前行,你的探索之路只有越走越广,你获得的知识只会越来越丰富,你的能力只会越来越强。
942 37
|
9月前
|
Linux 数据库 数据安全/隐私保护
Python web Django快速入门手册全栈版,共2590字,短小精悍
本教程涵盖Django从安装到数据库模型创建的全流程。第一章介绍Windows、Linux及macOS下虚拟环境搭建与Django安装验证;第二章讲解项目创建、迁移与运行;第三章演示应用APP创建及项目汉化;第四章说明超级用户创建与后台登录;第五章深入数据库模型设计,包括类与表的对应关系及模型创建步骤。内容精炼实用,适合快速入门Django全栈开发。
437 1
|
11月前
|
存储 监控 API
【Azure App Service】分享使用Python Code获取App Service的服务器日志记录管理配置信息
本文介绍了如何通过Python代码获取App Service中“Web服务器日志记录”的配置状态。借助`azure-mgmt-web` SDK,可通过初始化`WebSiteManagementClient`对象、调用`get_configuration`方法来查看`http_logging_enabled`的值,从而判断日志记录是否启用及存储方式(关闭、存储或文件系统)。示例代码详细展示了实现步骤,并附有执行结果与官方文档参考链接,帮助开发者快速定位和解决问题。
318 22

推荐镜像

更多