自学Python之路-django简介

1  django介绍

Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。Django 是一个开放源代码的 Web 应用框架,由 Python 写成。Django 遵守 BSD 版权,初次发布于 2005 年 7 月, 并于 2008 年 9 月发布了第一个正式版本 1.0 。

MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

  • M 代表model(模型),管理应用程序的状态(通常存储到数据库中),并约束改变状态的行为(或者叫做“业务规则”)。
  • V 代表view(视图),负责把数据格式化后呈现给用户。
  • C 代表controller(控制器),接受外部用户的操作,根据操作访问模型获取数据,并调用“视图”显示这些数据。控制器是将“模型”和“视图”隔离,并成为二者之间的联系纽带。

Django也是一个MVC框架。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式

  • M 代表模型(Model),即数据存取层。 该层处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。
  • T 代表模板(Template),即表现层。 该层处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。
  • V 代表视图(View),即业务逻辑层。 该层包含存取模型及调取恰当模板的相关逻辑。 你可以把它看作模型与模板之间的桥梁。

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

 

用户通过浏览器向我们的服务器发起一个请求(request),这个请求会去访问视图函数:

  • a  如果不涉及到数据调用,那么这个时候视图函数直接返回一个模板也就是一个网页给用户。
  • b  如果涉及到数据调用,那么视图函数调用模型,模型去数据库查找数据,然后逐级返回。视图函数把返回的数据填充到模板中空格,最后返回网页给用户。

2  Django的特点

  • 强大的数据库功能:用python的类继承,几行代码就可以拥有一个动态的数据库操作API,如果需要也能执行SQL语句。
  • 自带的强大的后台功能:几行代码就让网站拥有一个强大的后台,轻松管理内容。
  • 优雅的网址:用正则匹配网址,传递到对应函数。
  • 模板系统:强大,易扩展的模板系统,设计简易,代码和样式分开设计,更易管理。
  • 缓存系统:与memcached或其它缓存系统联用,表现更出色,加载速度更快。
  • 国际化:完全支持多语言应用,允许你定义翻译的字符,轻松翻译成不同国家的语言。

3  Django项目目录

  • urls.py:网址入口,关联到对应的views.py中的一个函数(或generic类),访问网址就对应一个函数。
  • views.py:处理用户发出的请求,与urls.py对应, 通过渲染templates中的网页可以将显示内容,如登陆后的用户名,用户请求的数据等输出到网页。
  • models.py:与数据库操作相关,存入或读取数据时用到,用不到数据库时可以不使用。
  • forms.py:表单,用户在浏览器上输入数据提交,对数据的验证工作以及输入框的生成等工作,也可以不使用。
  • templates文件夹:views.py中的函数渲染templates中的html模板,得到动态内容的网页,可以用缓存来提高速度。
  • admin.py:后台,可以用很少的代码就拥有一个强大的后台。
  • settings.py:Django 的配置文件,如 DEBUG 的开关,静态文件的位置等。

4  Django版本

5  Django与Python版本兼容

 

 

........

posted on 2023-02-23 07:37  CARLOS_KONG  阅读(60)  评论(0编辑  收藏  举报

导航