Django学习之路

django-admin startproject YueNet

Posted by youyue on January 18, 2018
Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式:

    M 代表模型(Model),即数据存取层。 该层处理与数据相关的所有事务:如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。

    T 代表模板(Template),即表现层。 该层处理与表现相关的决定:如何在页面或其他类型文档中进行显示。

    V 代表视图(View),即业务逻辑层。 该层包含存取模型及调取恰当模板的相关逻辑。你可以把它看作模型与模板之间的桥梁。

一 路由系统

URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL与要为该URL调用的视图函数之间的映射表;
你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码

urlpatterns = [
    url(正则表达式, views视图函数,参数,别名),
]
 
参数说明:
 
    一个正则表达式字符串
    一个可调用对象,通常为一个视图函数或一个指定视图函数路径的字符串
    一个可选的要传递给视图函数的默认参数(字典形式)
    一个可选的name参数

二 模型M(Model)

在Django中model是你数据的单一、明确的信息来源。它包含了你存储的数据的重要字段和行为
通常,一个模型(model)映射到一个数据库表

基本情况:
	- 每个模型都是一个Python类,它是django.db.models.Model的子类
	- 模型的每个属性都代表一个数据库字段
	- 综上所述,Django为您提供了一个自动生成的数据库访问API

三 模板T(Template)

模版的创建过程,对于模版,其实就是读取模版(其中嵌套着模版标签),
然后将 Model 中获取的数据插入到模版中,最后将信息返回给用户。

四 视图V(View)

一个视图函数(类),简称视图,是一个简单的Python 函数(类),它接受Web请求并且返回Web响应。
响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片。
无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你当前项目目录下面。

PS. 因为文章中很多标签和Jekyll语法冲突,所以全文不能上传至GitHub