Django快速入门篇

Django官网

https://docs.djangoproject.com/zh-hans/4.2/

官方介绍

官方版本 推荐LTS版本,python3.9/3.10

  • djongo 每两年会出一个LTS版本

  • 关于环节djongo,conda直接安装即可

shell 复制代码
conda create -n myenv python=3.9
conda activate myenv
pip install djongo==4.2

在这里插入图片描述

一.快速开始

1.快速创建一个HelloDjango的工程
shell 复制代码
django-admin startproject HelloDjango

前两个前缀是既定操作,django-admin startproject + 项目名称

2.pycharm同样可以即实创建

若pycharm无法正常创建,暂时忽略,后续处理!

  • 失败原因:未选择含有django的环境、版本不兼容等问题

命令行创建user模块

python 复制代码
python manage.py startapp user

二. Djongo相关文件表述

1.mange.py:是Django管理项目命令行工具,尽量不要更改;
2.init.py表述包
3.settings.py配置文件
4.urls.py路由映射
5.wsgi.py在服务器上的部署和上线,一般不需要修改。
6.asgi.py定义ASGI的接口信息;Django3.0后的新增内容,目的是为了高并发做出优化,新增ASGI相比WSGI实现异步处理,用于异步通信服务;

项目开发时,主要用到urls,settings

三.settings.py详细讲解

1.得到项目根目录地址
java 复制代码
BASE_DIR = Path(__file__).resolve().parent.parent
  • _ _ file_ _ 表示当前文件
  • Path(_ _ file _ _ )表示获取当前文件路径对象
  • Path(_ _ file _ _ ).resolve(),表示调用resolve方法,获取 路径对象绝对路径
  • .parent.parent表示.../.../等意思、
2.根路径使用方法
python 复制代码
pathSample = BASE_DIR / 'your_path_dir'  #获取your_path_dir的路径地址
3.其他
python 复制代码
# TODO  2.密钥不用管,内部加密使用
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = "django-insecure-ow94kud3hn2!3!aph8srr=(!!8-qwse$-h=^c_ifpsi1i)lw(*"

# TODO  3.是否使用调试模式,一般用于
"""
    True     调试过程-开发
    False    非调试-上线
"""
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True


# TODO  4.被允许的服务器域名 ALLOW_HOSTS
"""
    统配:*
"""
# ALLOWED_HOSTS = []
ALLOWED_HOSTS = ['*']

4.定义app

复制代码
  INSTALLED_APPS需要定义自己的APP和Django定义的app
MIDDLEWARE中间件
ROOT_URLCONF根路由路径,
TEMPLATES模板
WSGI_APPLICATION wsgi目录
DATABASES数据库默认sqlite3
AUTH_PASSWORD_VALIDATORS
Internationalization国际化
STATIC_URL静态文件地址

四.启动

python 复制代码
# 指定端口
python manage.py runserver 8080  # 访问 http://127.0.0.1:8080

# 指定 IP 和端口(用于局域网访问)
python manage.py runserver 0.0.0.0:8000  # 允许所有 IP 访问		并且settings.ALLOWED_HOSTS=['*']

五.数据迁移

  • migrante的概念就是将模型映射到数据库的过程

迁移的命令:

  • 生成迁移文件
python 复制代码
python	manage.py makemigrations
  • 执行迁移
python 复制代码
python manage.py migrate
  • 1.创建一个user的模块
java 复制代码
python manage.py startapp user
  • 2.执行迁移
java 复制代码
python	manage.py makemigrations
python manage.py migrate
  • 3.将db.sqlite3一致Database创建数据库刷新即可;
相关推荐
辻弋2016 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
可乐鸡翅yeah_7 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
石头麻辣鱼7 小时前
Bamboo 调度系统 OceanBase 适配实战:存储过程迁移踩过的三个大坑
数据库
龙亘川7 小时前
数智驱动民政升级 精准守护民生保障
大数据·数据库·人工智能
念何架构之路8 小时前
zap扩展生态与总结
java·前端·数据库
晚安日记wanna8 小时前
MySQL 回表为什么这么慢?5 种优化手段逐个拆解
数据库·mysql·性能优化
第七页独白8 小时前
汽车零件厂如何通过 QMS 真正落地 IATF 16949——QMS软件系统:品质检验-内审稽核-8d客诉管理:全星质量管理软件系统
java·前端·数据库
晚安日记wanna8 小时前
索引建了却不走?7 个失效原因逐层排查
数据库·mysql·性能优化
YIAN8 小时前
实战|用 DeepSeek + SQLite 从零搭建轻量 Text2SQL 查询助手
后端·sqlite·deepseek
KID1412号9 小时前
PostgreSQL入门
数据库·postgresql