本节课是通过Django
框架最终完成一个"图书-英雄"信息管理的小例子.
主要知识点介绍
(1) 安装django
环境
(2) 创建django
项目
(3) 设计模型类并利用模型类和数据库进行交互
(4) 使用django
后台管理数据
(5) 编写视图函数,进行URL
配置
(6) 模板的使用
(7) 图书-英雄案例完成
搭建环境
首先创建一个虚拟环境
virtualenv -p python ./venv
然后安装的包,命令如下:
pip install django==
我们使用的是的版本,这是一个稳定性高,使用广,文档多的版本.
创建项目
我们以一个电商网站为例,网站上有跟用户有关的页面,有跟商品有关的页面,还有跟订单有关的页面.
这样一块内容其实就是网站的一个功能模块.
在django
中,项目的组织结构为一个项目包含了多个应用,一个应用对应一个业务模块.
创建项目
使用命令行新建django项目
django-admin startproject 项目名称
例: django-admin startproject test1
使用PyCharm新建django项目
项目默认目录说明
(1) 是项目管理文件,通过它管理项目
(2) test1
与项目同名的目录
(3) test1/
是一个空文件,作用是这个test1
目录可以被当作包使用
(4) test1/
是项目的整体配置文件
(5) test1/
是项目的URL配置文件
(6) test1/
是项目与WSGI
兼容的Web
服务器入口,详细内容会在部署中讲到.
创建应用
使用一个应用开发一个业务模块,此处创建应用名称为booktest
,完成图书-英雄的信息维护.
创建应用的命令如下
python startapp booktest
在PyCharm中创建应用
我们看看新创建的app
的目录结构
(1) 是一个空文件,表示当前目录
booktest
可以当作一个Python
包使用
(2) 文件用于开发测试用例,在实际开发中会有专门的测试人员,这个事情不需要我们来做
(3) 该文件跟数据库操作相关
(4) 文件跟结构浏览器请求,进行处理,返回页面相关
(5) 该文件跟网站的后台管理相关
(6) migrations
这个文件夹之后给大家介绍
安装应用
应用创建成功后,需要安装才可以使用,也就是建立应用和项目之间的关联.
在test1/
中的INSTALL_APPS
下添加应用名称就可以完成安装.
开发服务器
在开发阶段,为了能够快速预览到开发的效果,django
提供了一个纯python
编写的轻量级web
服务器,仅在开发阶段使用.
运行服务器命令如下
python runserver 端口号
例: python runserver 8080
Pycharm中设置服务器
服务器运行成功后,如下图
然后在浏览器中输入网址http://localhost:8000
,可以查看当前站点开发效果
注意: 如果增加,删除,修改文件,那么该服务器会自动重启.
设计模型
我们之前操作数据库是通过写sql
语句,那么能不能不写sql
语句就可以操作数据库呢?
答案是可以的,就是接下来要给大家讲的ORM
框架.
ORM框架
O
是object
,也就是类对象的意思,R
是relation
,也就是关系数据库中数据表的意思,M
是mapping
是映射的意思.
在ORM
框架中,它帮我们把雷和数据表进行了一个映射,可以让我们通过类和类对象就能操作它所对应的表格中的数据.
ORM
框架还有一个功能它可以根据我们设计的类自动帮我们生成数据库中的数据表,省去了我们自己建表的过程.
django中使用ORM框架
django
中内嵌了ORM
框架,不需要直接面向数据库编程,而是定义模型类,通过模型类和对象完成数据表的增删改查操作.
使用django进行数据库开发的步骤如下:
(1) 在中定义模型类
(2) 迁移
(3) 通过类和对象完成数据增删改查操作
定义模型类
模型类定义在