一 什么是Django
- Python下有许多款不同的 Web 框架。Django是重量级选手中最有代表性的一位。许多成功的网站和APP都基于Django。
- Django是一个开放源代码的Web应用框架,由Python写成。
- Django遵守BSD版权,初次发布于2005年7月, 并于2008年9月发布了第一个正式版本1.0 。
- Django采用了MVC的软件设计模式,即模型M,视图V和控制器C。
二 Django版本对应的Python版本
Django 版本 |
Python 版本 |
1.8 |
2.7, 3.2 , 3.3, 3.4, 3.5 |
1.9, 1.10 |
2.7, 3.4, 3.5 |
1.11 |
2.7, 3.4, 3.5, 3.6 |
2.0 |
3.5+ |
从这个对应关系可以看出,一般安装1.11版本的Django比较好,会兼容目前比较主流的python2.7版本和python3.6版本。
三 WIndow下安装Django
1 Python 下载地址:CSDN
2 Django 下载地址:CSDN
具体安装过程请参考:CSDN
四 Django项目结构说明
$ cd HelloWorld/
$ tree
.
|-- HelloWorld
| |-- __init__.py
| |-- settings.py
| |-- urls.py
| `-- wsgi.py
`-- manage.py
目录说明:
- HelloWorld: 项目的容器。
- manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
- HelloWorld/__init__.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
- HelloWorld/settings.py: 该 Django 项目的设置/配置。
- HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
- HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。
注意:项目中如果代码有改动,服务器会自动监测代码的改动并自动重新载入,所以如果你已经启动了服务器则不需手动重启。
五 url() 函数介绍
Django url() 可以接收四个参数,分别是两个必选参数:regex、view 和两个可选参数:kwargs、name,接下来详细介绍这四个参数。
-
regex: 正则表达式,与之匹配的 URL 会执行对应的第二个参数 view。
-
view: 用于执行与正则表达式匹配的 URL 请求。
-
kwargs: 视图使用的字典类型的参数。
-
name: 用来反向获取 URL。
六 小案例——启动django后,不能访问,报400错误
原因:没有开启允许访问。
处理:编辑HelloWorld目录下setting.py
ALLOWED_HOSTS=[]改成ALLOWED_HOSTS=['*'] ##* 表示任意地址。
七 django.urls在新旧版本的差别
1 2.0前版本写法
from django.conf.urls import url
from . import view
urlpatterns = [
url(r'^hello$', view.hello),
]
2 2.0后版本写法
# urls.py 的 django.conf.urls 已经被 django.urls 取代。
# import url 变成了 import path
from django.urls import path
from . import view
urlpatterns = [
# 如果是路径,则须在路径后加个 /
path('hello/', view.hello),
]