一、Django框架的介绍
2005年发布,采用Python语言编写的开源框架
早期的时候Django主做新闻和内容管理的
一个重量级的 Python Web框架,Django 配备了常用的大部分组件
(一)安装:
1.在线安装:
- $ sudo pip3 install django # (安装django的最新版本)
- $ sudo pip3 install django[==版本]
$ sudo pip3 install django==1.11.8
?(安装django的指定版本)
2.离线安装:
- 下载安装包:
- 安装离线包
$ tar -xvf Django-1.11.8.tar.gz
$ cd Django-1.11.8
$ sudo python3 setup.py install
3.用wheel离线安装
下载安装包:
pip3 download -d /home/weimz/django_packs django==1.11.8
安装离线包
$ pip3 install Django-1.11.8.whl
(二)Django的卸载:$ pip3 uninstall django
(三)Django 的开发环境:
- Django 1.11.x 支持 Python 2.7,3.4,3.5 和 3.6(长期支持版本 LTS)
- 注: Django 1.11.x 不支持 Python 3.7
二、Django框架开发
(一)创建项目的指令
$?django-admin startproject 项目名称
如:$ django-admin startproject mywebsite1
运行:$ cd mywebsite1 $ python3 manage.py runserver # 或 $ python3 manage.py runserver 5000 # 指定只能本机使用127.0.0.1的5000端口访问本机
(二)Django项目的目录结构
? $ django-admin startproject mywebsite1
??$ tree mywebsite1/工
??mywebsite1/
??├── manage.py??????????#项目管理的文件
??└── mywebsite1
??????├── __init__.py
??????├── settings.py???#项目配置文件
??????????????DEBUG = True
??????????????ALLOWED_HOST = []
??????????????TIME_ZONE = ‘UTC‘??#‘Asia/Shanghai‘
??????????????LANGUAGE_CODE = ‘zh-hans‘ #‘en-su‘
??????????????BASE_DIR = 当前项目所在位置的局对路径
??????????????ROOT_URLCONF = ‘mywebsite1.urls‘
??????├── urls.py??????????#主路由配置文件
??????????????http : //????127.0.0.1(:8000) / path?a=(查询)#(信息片段urls)
??????????????路由:
??????????????主路由配置文件
??????????????????#file:urls.py
??????????????????from django.conf.urls import url
??????????????????urlpattrens = [
??????????????????????url(r‘^page,views.page_view‘),
??????????????????????#注:如果page匹配成功,则page1和page2略过 需要在后面加&符号
??????????????????????url(r‘^page1,views.page1_view‘),
??????????????????????url(r‘^page2,views.page2_view‘),
??????????????????????#/data/2018/1/12 ->data_view(req,‘2018‘,‘1‘,‘12‘)参数一定是字符串
??????????????????????url(r‘^date/(d{4}/(d{1,2})/(d+),
??????????????????????#/person/xiaoming/35 ->person_view(req,name=‘xiaoming‘,age=‘35‘)关键字传参,参数必须是字符串
??????????????????????url(r‘^person/(?P<name>w+)/(?P<age>d+),
??????????????????????………………
??????????????????]
??????└── wsgi.py??????????#wsgi布置的文件
?项目目录结构解析: manage.py 此文件是项目管理的主程序,在开发阶段用于管理整个项目的开发运行的调式 ??????manage.py 包含项目管理的子命令,如: ??????-?python3 manage.py runserver 启动服务? ??????-?python3 manage.py startapp 创建应用? ??????-?python3 manage.py migrate 数据库迁移