django从入门到入土(一)

发布于:2023-02-04 ⋅ 阅读:(765) ⋅ 点赞:(0)


活动地址:[CSDN21天学习挑战赛]((https://marketing.csdn.net/p/bdabfb52c5d56532133df2adc1a728fd)

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:
想系统/深入学习某技术知识点…
一个人摸索学习很难坚持,想组团高效学习…
想写博客但无从下手,急需写作干货注入能量…
热爱写作,愿意让自己成为更好的人…


python-django从入门到入土(一)

自我介绍

大家好,我是玉江仙,接下来我将带领大家从0到1快速学习掌握django,会有一系列的精品博客产出

学习目标

熟练使用django进行项目开发

学习计划(理论和项目实践)

理论框架

  • 掌握django一个简单的项目流程

    • django理论介绍

    • 创建python虚拟环境并导入django第三方包

    • 创建django项目

    • 模型

    • 站点管理

    • 视图和url

    • 模板

    • 配置文件和静态文件

项目实践案例

黑马程序员美多商城搭建 引用B站案例

1.django框架理论介绍

1.1基本介绍

Django是一个开源的Python Web应用框架,采用了MVT的框架模式,即模型M视图V模版T,最早于2005年发布。Django被认为是"大而全"的重量级Web框架,其自带大量的常用工具和组件(比如数据库ORM组件、用户认证、权限管理、分页、缓存), 甚至还自带了管理后台Admin,适合快速开发功能完善的企业级网站。Django自带免费的数据SQLite,同时支持MySQL与PostgreSQL等多种数据库。

1.2MVC框架模式介绍(经典框架)

参考文章链接

MVC即 Model-View-Controller(模型-视图-控制器) ,是经典的软件开发设计模式。

  • Model (模型): 简而言之即数据模型。模型不是数据本身(比如数据库里的数据),而是抽象的描述数据的构成和逻辑关系。通常模型包括了数据表的各个字段(比如人的年龄和出生日期)和相互关系(单对单,单对多关系等)。Web开发框架会根据模型的定义来自动生成数据表。

  • View (视图): 主要用于显示数据,用来展示用户可以看到的内容或提供用户可以输入或操作的界面。数据来源于哪里?当然是数据库啦。那么用户输入的数据给谁? 当然是给控制器啦。

  • Controller(控制器):应用程序中处理用户交互的部分。通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据(比如增加或更新数据表)。

    MVC框架图如下:
    MVC框架(来源搜索引擎)

1.3MVT框架模式介绍(django)

Django的MVT设计模式由Model(模型), View(视图)Template(模板)三部分组成,分别对应单个app目录下的models.py, views.pytemplates文件夹。它们看似与MVC设计模式不太一致,其实本质是相同的。Django的MVT设计模式与经典的MVC对应关系如下。

  • Django Model(模型): 这个与经典MVC模式下的模型Model差不多。
  • Django View(视图): 这个与MVC下的控制器Controller更像。视图不仅负责根据用户请求从数据库读取数据、指定向用户展示数据的方式(网页或json数据), 还可以指定渲染模板并处理用户提交的数据。
  • Django Template(模板): 这个与经典MVC模式下的视图View一致。模板用来呈现Django view传来的数据,也决定了用户界面的外观。Template里面也包含了表单,可以用来搜集用户的输入内容。

Django MVT设计模式中最重要的是视图(view), 因为它同时与模型(model)和模板(templates)进行交互。当用户发来一个请求(request)时,Django会对请求头信息进行解析,解析出用户需要访问的url地址,然后根据路由urls.py中的定义的对应关系把请求转发到相应的视图处理。视图会从数据库读取需要的数据,指定渲染模板,最后返回响应数据。这个过程如下图所示:

MVT框架图

在这里插入图片描述

注:图片来源于搜索引擎,如有侵权,请联系我删除,且本作者以学习为目的,不涉及任何商业利益

结束以及做笔记建议

由于今天刚刚开始学习,所以不会太难,只进行一个理论上的学习和了解,学习完成后,希望能进行言语描述模拟一遍MVT架构以及希望能自行搜集一下相关资料进行深入了解。这里是django官方文档链接可以自行查看进行了解

如本作者有

下篇预告

下期将会带领大家进行python虚拟化环境的构建以及安装django并进行初级实践了解django框架各个组件

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到