当前位置: 首页 > news >正文

Django基础 - 01入门简介

一、 基本概念
1.1 Django说明

Django发布于2005年, 网络框架, 用Python编写的开源的Web应用框架。采用了MVC框架模式,也称为MTV模式。官网: https://www.djangoproject.com

1.2 MVC框架

Model:      封装和数据库相关的业务逻辑
View:       视图, 用来呈现数据
Controller: 控制器,接收用户输入,调用View的输出,协调流程的运转
特点:        解耦, 降低模块之间的耦合性, 方便变更, 容易重构。

1.3 MTV框架

Model:      模型,封装 数据库相关的业务逻辑
Template:   模板, html, 相当于 MVC中View的职责
Views:      视图函数, 相当于MVC中的Controller, 用来协调
urls:       Django中的分发器, 一般称为url路由; 将一个URL页面的请求分发给不同的View进行处理,View再调用相应的Model和Template

在这里插入图片描述
在这里插入图片描述
1.4 请求流程

请求到urls分发器
urls分发器 根据路由规则(正则)分发到views
views 调用Model, 交互数据
views 将数据渲染到 模板中
模板呈现给用户

二、 Django 项目初始化
2.1 创建工程: 纯Python工程(Pure Python)
在这里插入图片描述
2.2 安装Django=2.1.5

(venv) E:\PythonLearn\djangoDemo>pip install django==2.1.5
Looking in indexes: https://pypi.doubanio.com/simple

2.3 创建Django 项目

# django-admin 必须在安装了Django的环境中使用
(venv) E:\PythonLearn\djangoDemo>django-admin --help
Type 'django-admin help <subcommand>' for help on a specific subcommand.# django-admin 命令 创建Django项目
(venv) E:\PythonLearn\djangoDemo>django-admin startproject helloDjango

修改 Django项目 目录为源码目录
在这里插入图片描述
2.4 创建Django项目的 应用APP

在一个Django项目中,可以有很多的app应用(模块), 创建好的app 需要手动注册到主工程中(settings.py)

# 进入到工程目录下创建应用,不然应用目录存放在命令执行的路径下
(venv) E:\PythonLearn\djangoDemo>cd helloDjango# 通过django-admin 创建app应用
(venv) E:\PythonLearn\djangoDemo\helloDjango>django-admin startapp mainapp
(venv) E:\PythonLearn\djangoDemo\helloDjango>django-admin startapp orderapp

Django项目的目录结构 
在这里插入图片描述

http://www.lryc.cn/news/506935.html

相关文章:

  • 简单的bytebuddy学习笔记
  • 【服务端】Redis 内存超限问题的深入探讨
  • Springboot logback 日志打印配置文件,每个日志文件100M,之后滚动到下一个日志文件,日志保留30天(包含traceid)
  • 《计算机组成及汇编语言原理》阅读笔记:p1-p8
  • 【游戏中orika完成一个Entity的复制及其Entity异步落地的实现】 1.ctrl+shift+a是飞书下的截图 2.落地实现
  • 在 Ubuntu 上安装 MySQL 的详细指南
  • Java 优化springboot jar 内存 年轻代和老年代的比例 减少垃圾清理耗时 如调整 -XX:NewRatio
  • 嵌入式驱动RK3566 HDMI eDP MIPI 背光 屏幕选型与调试提升篇-eDP屏
  • 在Java虚拟机(JVM)中,方法可以分为虚方法和非虚方法。
  • 【windows】sonarqube起不来的问题解决
  • golang异常
  • 搭建MongoDB
  • Android中坐标体系知识超详细讲解
  • 不需要服务器,使用netlify快速部署自己的网站
  • Swin transformer 论文阅读记录 代码分析
  • 信息安全概论
  • 2024年12月16日Github流行趋势
  • Go 1.24即将到来!
  • FFmpeg库之ffplay
  • scala中模式匹配的应用
  • WebRTC搭建与应用(一)-ICE服务搭建
  • 【计算机视觉基础CV】03-深度学习图像分类实战:鲜花数据集加载与预处理详解
  • Kafka学习篇
  • 冬日养仓鼠小指南:温暖与陪伴同行
  • 【计算机视觉基础CV】05 - 深入解析ResNet与GoogLeNet:从基础理论到实际应用
  • Python爬虫之代理的设置
  • Canoe E2E校验自定义Checksum算法
  • [HNCTF 2022 Week1]你想学密码吗?
  • 端到端自动驾驶大模型:视觉-语言-动作模型 VLA
  • druid与pgsql结合踩坑记