一、MySQL环境搭建:
1.下载MySQL数据库并安装,安装教程见:https://blog.csdn.net/lala12d/article/details/82743875;
2.下载数据库时,如果遇到“Windows缺少Visual C++ 2013 库,需要安装Visual C++ 2013 库”的问题,解决地址:https://blog.csdn.net/codingforhaifeng/article/details/80675498
3.pymysql是python程序连接mysql数据库的的第三方库,通过运行import pymysql 查看系统中是否有该模块,没有的话需要自行安装。
(1)下载安装包,教程如下:https://www.cnblogs.com/iexperience/p/9510179.html
(2)使用pip命令 安装:
二、数据库配置:
1.数据库连接库导入及数据库配置
2.设计表结构
班级表结构和学生表结构设计如下:
三、创建应用、激活应用
在一个项目中可以创建多个应用,每个应用对应一种场景。
1.创建应用的步骤,进入Django项目目录,执行命令<python manage.py startapp myApp>,创建一个名字叫myApp的应用。
2.myApp应用的目录下.py文件的简单说明:
3.激活myApp应用
进入到settings.py文件中,将myApp应用加入到INSTALLED_APPS选项中,见下图:
四、定义模型
定义模型是为了与数据库进行交互,一个数据表对应一个模型。
1.进入myApp目录,编辑models.py文件,输入导入代码(一般文件中已内置导入好了):from django.db import models
2.创建模型,类中属性对应数据表中的字段
五、创建数据表
1.生成迁移文件
在manage.py文件所在的目录打开cmd窗口,执行命令<python manage.py makemigrations>,在migrations目录下生成一个迁移文件,此时还未生成数据表
2.执行迁移(相当于执行sql语句创建数据表)
在manage.py文件所在的目录打开cmd窗口,执行命令<python manage.py migrate>,此时已生成数据表。
3.进入数据库查看所生成的数据表,以及数据表中数据:
六、测试数据操作(暂在黑屏终端中执行,以后再在程序中执行)
1. 进入python shell:进入Django工程目录(manage.py文件所在的目录),执行命令<python manage.py shell>
2. 引入包(前期准备工作,引入今后用到的)
3. 查询所有数据:
4. 添加数据(以定义的模型为基准,创建对象):
创建班级:
创建学生:
(1)如果执行代码stu.save()报错,报错内容如下:
则需修改MySQL的编码格式,登录数据库,执行<show variables like 'character%';>命令,再执行命令<set character_set_database=utf8;>修改数据库编码格式,如下图:
此时再次创建数据库,创建新表,问题解决。
注意:创建数据库后应该先检查数据库的字符编码,修改为utf8,再去创建数据库和表。
(2)对于已经创建了的数据库和表。
修改数据库编码格式: Alter database 数据库名称 character set utf8 collate utf8_general_ci;
修改表编码格式: Alter table 表名称 convert to character set utf8;
查看数据库的编码格式: show create database 数据库名称;
查看表的编码格式:show create table 表名称;
详细解决方式见链接:https://www.jianshu.com/p/eca83992983a
(3)再执行<stu.save()>代码,去数据库中检查表的数据内容,如下表示成功:
5. 查询某个对象,修改对象中的某个数据,删除对象操作。
6.关联对象数据操作。
获得关联对象的集合(获取一班的所有学生),与<类名.objects.all()>不同,<类名.objects.all()>是获取某个对象下的所有对象(例如:获取所有的班级或者所有的学生)。
注意使用上图中创建stu3的方式来创建关联对象的实例时,不用使用grade1.save()来保存即可新建成功,保存到数据库中。
七、启动服务器
使用实例:进入到Django工程目录(manae.py所在的目录),执行<python manage.py runserver>,出现如下画面表示启动服务成功,接下来即可访问:http://127.0.0.1:8000/
该黑屏终端打开后不可关闭,否则服务也会关闭
八、Admin站点管理
1.配置Admin应用,进入settings文件中,检查文件中INSTALLED_APPS中是否内置了管理员的配置。
2.创建管理员用户,在Django工程目录执行<python manage.py createsuperuser>:
创建完管理员账号后可以通过访问http://127.0.0.1:8000/admin/来检查是否可以登录成功。
3.汉化。
进入settings.py文件,修改如下配置:
然后重启服务<python manage.py runserver>及汉化成功。
4.管理数据表,进入myApp应用的admin.py文件中,进行表的注册。
(1)注册表默认管理数据配置
然后刷新http://127.0.0.1:8000/admin/页面,即可更新出注册表,然后进行管理。
列表页默认配置下展示如左下图、列表页修改或添加页默认配置下展示如右下图:
(2)注册表自定义管理数据
自定义注册表管理数据时,主要设置字段有list_display,list_filter,search_fields,list_per_page,fieds,fieldsets。list_per_page,fields,fieldsets
本项目中的配置实例如下:
列表页自定义配置下展示如左下图、列表页修改或添加页自定义配置下展示如右下图:
在实例中继续添加Students的自定义数据管理配置,如下图:
页面中关于Students的页面展示如下图: