Django基础

一、使用Django框架的开发步骤

1、选择合适的版本

2、安装及配置

3、生成项目结构

4、内容开发

5、迭代、上线、维护

二、版本兼容情况

三、Django的安装

pip3 install django -i https://pypi.tuna.tsinghua.edu.cn/simple/

四、项目结构

my_project # 项目目录

init.py # 包的入口文件

settings.py # 项目配置文件

urls.py # url访问地址配置文件

wsgi.py # 部署配置

asgi.py # 部署文件

db.sqlite3 # sqlite数据库

mange.py # 命令行管理工具

五、启动开发服务器

python manage.py runserver

六、runserver常用参数

runserver命令用于启动开发服务器,它有几个常用的参数可以帮助开发者根据需要调整服务器的运行方式。以下是runserver命令的常用参数及其说明:

1、指定端口:

参数格式:python manage.py runserver [port]

示例:python manage.py runserver 9527

说明:此参数用于指定服务器监听的端口号。如果不指定,Django默认会在8000端口上启动服务器。

2、指定IP和端口:

参数格式:python manage.py runserver [addr]:[port]

示例:python manage.py runserver 0.0.0.0:9527

说明:此参数用于同时指定服务器监听的IP地址和端口号。0.0.0.0表示监听所有可用的网络接口,这样其他设备也可以访问你的Django开发服务器(在允许的网络配置下)。

3、指定settings文件(通过命令行参数):

参数格式:--settings=[PROJECT_NAME].[SETTINGS_MODULE]

示例:python manage.py runserver --settings=myproject.settings_prod

说明:此参数用于指定Django项目使用的settings文件。这对于在不同环境(如开发、测试、生产)中使用不同的配置非常有用。

4、通过环境变量指定settings文件:

说明:除了通过命令行参数指定settings文件外,还可以通过设置环境变量DJANGO_SETTINGS_MODULE来指定。这通常在修改manage.py文件或通过操作系统的环境变量设置来实现。

5、其他注意事项:

当使用runserver命令启动服务器时,Django会自动检测ALLOWED_HOSTS设置,并只允许列表中指定的主机名访问。如果尝试从不在ALLOWED_HOSTS中的主机名访问,Django将返回400错误。

runserver命令启动的是一个轻量级的开发服务器,它不适合用于生产环境。在生产环境中,应使用如Gunicorn、uWSGI等更健壮的WSGI服务器来部署Django项目。

七、创建模块

python manage.py startapp hello

八、视图

一个视图函数,简称视图

def view_name()定义视图函数

接受一个请求、返回一个响应

九、URL的常用配置

path函数:

path(route,view,name,**kwargs)

route:RUL匹配规则

view:视图函数

name:路由的名称(可选)

**kwargs:其他函数(可选)

include函数:

include(urls,namespace)函数

urls:URL匹配规则列表

namespace:命名空间(可选)

相关推荐
ZhengEnCi33 分钟前
P2M-Matplotlib折线图完全指南-从数据可视化到趋势分析的Python绘图利器
python·matlab·数据可视化
猪猪拆迁队1 小时前
虚拟工厂仿真引擎的架构设计:让一条产线可编程、可观测、可干预
后端·ai编程
字节跳动数据库1 小时前
文章分享——相似函数处理方法
人工智能·后端·程序员
云技纵横1 小时前
@Transactional 失效的 7 种场景:第 5 种最难排查
后端
用户6757049885022 小时前
你知道 Go 结构体和结构体指针调用的区别吗?一文带你彻底搞懂!
后端·go
程序员cxuan2 小时前
读懂 Claude Code 架构分析系列,第一篇,开始!
人工智能·后端·架构
用户6757049885022 小时前
面试官问“装饰器模式”,这样回答薪资多要 3000!
后端
tntxia2 小时前
Geo Scene域名修改引起的一些问题
后端
用户298698530142 小时前
Java 实现 Word 文档加密与权限解除
java·后端
ZhengEnCi2 小时前
P2L-Matplotlib饼图完全指南-从数据可视化到图表定制的Python绘图利器
python·matlab