1. MVC和MTV框架

1.1MVC

Web服务器开发领域里著名的MVC模式

所谓MVC就是把Web应用分为模型(M)

控制器(C)视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型和视图完成用户的请求,其示意图如下所示:

1.2MTV

Django的MTV模式本质上和MVC是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django的MTV分别是值:

  • M 代表模型(Model): 负责业务对象和数据库的关系映射(ORM)。
  • T 代表模板 (Template):负责如何把页面展示给用户(html)。
  • V 代表视图(View): 负责业务逻辑,并在适当时候调用Model和Template。

  除了以上三层之外,还需要一个URL分发器,它的作用是将一个个URL的页面请求分发给不同的View处理,View再调用相应的Model和Template,MTV的响应模式如下所示:

一般是用户通过浏览器向我们的服务器发起一个请求(request),这个请求回去访问视图函数,(如果不涉及到数据调用,那么这个时候视图函数返回一个模板也就是一个网页给用户),视图函数调用模型,模型去数据库查找数据,然后逐级返回,视图函数把返回的数据填充到模板中空格中,最后返回网页给用户。

2.Django 下载安装

pip3 install  django

2.1 pycharm创建项目

2.2 目录结构

2.3 启动改端口

2.4 手动创建项目

手动创建项目,常用于服务器部署

创建项目

django-admin startproject mysite   创建了一个名为"mysite"的Django 项目

在项目目录下创建应用

python manage.py startapp blog

需要在 settings,py

INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','app01'  #手动添加 pycharm创建的不需要
]

启动项目

python manage.py runserver  8080    

默认端口为 8080

3. 创建django简单实例

编写urls.py

from django.contrib import admin
from django.urls import path
from  app01  import  viewsurlpatterns = [path('admin/', admin.site.urls),path('index/', views.index),
]

视图文件views.py

def index(request):return render(request,"index.html")

模版 templates下新建index.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body>
<div>213213
</div>
</body></html>

启动

转载于:https://www.cnblogs.com/zdqc/p/11579676.html

Dango之初识安装相关推荐

  1. Redis01_初识安装

    Redis  开源的(BSD协议),(genu)使用ANSI  C 编写,基于内存的且支持持久化,高性能的Key-Value的NoSQL数据库 支持数据结构类型丰富,有如 字符串(strings), ...

  2. 001-supervisor

    supervisor 使用教程(转) 原文地址:https://word.gw1770df.cc/2016-08-04/linux/supervisor-%E4%BD%BF%E7%94%A8%E6%9 ...

  3. 最新版本elasticsearch本地搭建入门篇

    最新版本elasticsearch本地搭建入门篇 项目介绍 最近工作用到elasticsearch,主要是用于网站搜索,和应用搜索. 工欲善其事,必先利其器. 自己开始关注elasticsearch, ...

  4. python 打开是黑的-python黑色

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 下面部分是笔者摘取python tkinter course,笔者将其受用于pyt ...

  5. 量化交易python 文件_python数据分析与量化交易

    第一章-学习之前的认知 影响股价的因素 1.公司自身因素2.心理因素3.行业因素4.经济因素5.市场因素6.政治因素 金融量化投资 量化投资的优势1.避免主观情绪,人性弱点和认知偏差,选择更加客观2. ...

  6. Python_从零开始-同步学习进度

    目录 1.0-Python初识 在编程界,有一句话非常出名,叫"Talk is cheap, show me the code."--空谈无益,秀代码 print()函数 转义字符 ...

  7. 加米谷学院大数据培训课程安排

    对于0基础学员来说,加米谷学院的大数据培训课程安排是什么样呢? 大数据开发工程师课程体系--Java部分. 第一阶段:静态网页基础 1.学习Web标准化网页制作,必备的HTML标记和属性 2.学习HT ...

  8. python excel openpyxl_openpyxl | Python操作Excel利器

    Python-openpyxl操作生成Excel 初识 安装 pip install openpyxl 逻辑 一个excel文档就是一个工作簿 Workbook,每个工作簿对应可以有很多个表格shee ...

  9. python语言的类型是_python到底是什么类型的语言

    人肉搜索引擎其实就是在一个社区里面提出一个问题,由人工参与解答而非搜索引擎通过机器自动算法获得结果的搜索机制.属性目录,属性管理器,附加依赖,通用属性,依赖项中,勾选空,压缩包解压,opencv,bu ...

最新文章

  1. java实用solr6.6_搜索引擎Solr-6.6.0搭建
  2. 不动产登记进入倒计时 哪些房子必须要卖掉?
  3. linux symbol文件,LINUX EXPORT_SYMBOL_GPL及EXPORT_SYMBOL导出函数
  4. python与 积分
  5. jquery通过ajax向后台发送(checkbox)数组,并在后台接收,(发送的数据是checkedbox)...
  6. linux中第一个进程的形成,Linux进程管理
  7. Linq 学习笔记(二)
  8. java list应用_java中list集合的应用
  9. LeetCode 135 分发糖果
  10. spring-boot-2.0.3之quartz集成,数据源问题,源码探究
  11. android 自定义窗口,Android studio如何自定义设置窗口布局?
  12. 输入防插错过压保护电路
  13. python编写生日代码_利用python-docx模块写批量生日邀请函
  14. java人脸识别怎么写-------源码附上
  15. 推荐一本 python自动化框架pytest -上海悠悠
  16. 在 vmware ESXi上安装mac系统虚拟机
  17. 链接脚本在编程中的高级运用之一:可变长数组
  18. 小学C++编程入门书籍及相关资料介绍(一)
  19. 洛谷试炼场 动态规划TG.lv(2)
  20. Android解析XML的三种方式

热门文章

  1. 审慎 合宜与慈善三种学派的分类与核心思想
  2. 红米NoteX和红米NoteXpro的区别
  3. “白发”位置竟暗示五脏六腑健康状况
  4. 傻瓜式文章一键伪原创工具
  5. JAVA -- 正则表达式高级学习技巧
  6. 【PIL处理图片】小技巧之画虚线、加粗字体、长文本自动分行(符号处理)
  7. 测绘资质专业类别及乙级作业限制范围是什么?
  8. 联合查询分组取最新数据
  9. Spring IOC介绍
  10. [量化学院]价值选股策略——基于机器学习算法