框架

Django 紧紧地遵循这种 MVC 模式,可以称得上是一种 MVC 框架。以下是 Django 中 M、V 和 C 各自的含义:

  • M ,数据存取部分,由django数据库层处理,本章要讲述的内容。

  • V ,选择显示哪些数据要及怎样显示的部分,由视图和模板处理。

  • C ,根据用户输入委派视图的部分,由 Django 框架通过按照 URLconf 设置,对给定 URL 调用合适的 python 函数来自行处理。



由于 C 由框架自行处理,而 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),Django 也被称为 MTV 框架 。在 MTV 开发模式中:

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

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

  • V代表View,业务逻辑层。这一层包含访问模型的逻辑和按照模板显示。你可以认为它是模型和模板的桥梁。


一、Django安装

3种方式:

pip isntall django==版本号    #推荐

easy_install django              #easy_install

python setup.py install         #源码

源码下载

1.png


安装步骤:

pip install django==1.6.5

pip list

import django

print(django.get_version()) 




二、 创建项目

1.创建项目

命令:django-admin.py  startproject web    #生成子目录文件

[root@huangzp3 web]# tree /root/python/web/

/root/python/web/

├── manage.py

└── web

├── __init__.py

├── settings.py

├── urls.py

└── wsgi.py


项目文件说明:

__init__.py: 定义一个模块,供import导入调用

setting.py: 配置文件

urls.py:        视图配置文件,相当于MVC的V

wsgi.py:      一般用于结合apache或者nginx


2.修改setting.py配置文件的时区和语言

2.png


3.启动django

命令 python manage.py runserver 0.0.0.0:8000


4.web访问

说明:只有工程,没有应用的页面

3.png



三、添加应用

1.启动一个应用

两种方法:

python manage.py startapp blog    #管理脚本的形式

django-admin.py startapp blog       #添加项目的形式

clipboard.png


应用文件说明:

models.py:相当于MVC模式的M,定义数据模型

views.oy:   相当于MVC中的V,视图模板

test.py:      测试用

admin.py:  管理用


2.web项目目录下setting.py中,添加应用blog

2.png


3.urls.py(属于MVC模型中的C)文件,添加url,并引用index函数

3.png


4.在blog应用目录下,views.py模块中定义index函数

说明:先导入django内置模块;定义的函数必须带参数(请求),有请求(参数名可自定义)就有返回,返回字符串前,先用httpResponse内置函数处理

4.png



5.WEB访问

5.png


其中自定义的返回:

6.png


6.自定义web模板目录

说明:在应用blog目录下,创建一个templates目录,目录名固定写死,用于存放web网页文件,定义index.html

7.png


7.导入web模板

应用blog目录下,views.py文件,先导入模块

说明:t是一个对象,自动从template目录下加载文件;c也是一个对象,上下文Context,替换index.html里面的标记或者变量,因为写的index.html中没有这些,所有暂时定义为空;t的一个方法,渲染c,最后返回;凡是返回到页面上的,都要通过HttpResponse()

8.png


8.关闭进程,再次启动,查看网页

命令 python manage.py runserver 0.0.0.0:8000

9.png