Django 测试平台搭建学习:admin 产品管理模块(一)

前言

缺少全栈的练手项目,找了一本书《自动化平台测试开发:python测试开发实战》用来边做边练习,希望能坚持下来。

中间几天又出去玩做了几天的废材,终究是不爱学习的人。第三章看了一下,要补充的基础信息比较多,包括mtc模型,对model和admin有个大概的了解,涉及到操作数据库以及bootstrap4的医用。


目录

前言

一、预备知识的了解

1.1 MVC 与 MTV模型

MVC 模型

MTV 模型

 1.2 Django 的model的用法

1.2.1 新建应用

 1.2.2 定义model文件

1.3.3 添加应用到settings文件

1.3.4  同步 models的操作到db


一、预备知识的了解

第一章登录的设计没有涉及到数据库的读取,到产品模块设计设计到链接操作数据库内容等,所以对设计模型有个系统的了解。

1.1 MVC 与 MTV模型

MVC 模型

MVC 模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

MVC 以一种插件式的、松耦合的方式连接在一起。

  • 模型(M)- 编写程序应有的功能,负责业务对象与数据库的映射(ORM)。
  • 视图(V)- 图形界面,负责与用户的交互(页面)。
  • 控制器(C)- 负责转发请求,对请求进行处理。

Django 测试平台搭建学习:admin 产品管理模块(一)

MTV 模型

Django 的 MTV 模式本质上和 MVC 是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django 的 MTV 分别是指:

  • M 表示模型(Model):编写程序应有的功能,负责业务对象与数据库的映射(ORM)。
  • T 表示模板 (Template):负责如何把页面(html)展示给用户。
  • V 表示视图(View):负责业务逻辑,并在适当时候调用 Model和 Template。

Django 测试平台搭建学习:admin 产品管理模块(一)

 1.2 Django 的model的用法

Django 模型使用自带的 ORM。

对象关系映射(Object Relational Mapping,简称 ORM )用于实现面向对象编程语言里不同类型系统的数据之间的转换。

ORM 在业务逻辑层和数据库层之间充当了桥梁的作用。

ORM 是通过使用描述对象和数据库之间的映射的元数据,将程序中的对象自动持久化到数据库中。

Django 测试平台搭建学习:admin 产品管理模块(一)

Django 测试平台搭建学习:admin 产品管理模块(一)

1.2.1 新建应用

$django-admin.py startapp TestModel

django新建一个model需要新建app应用,必须新建对应的目录

目录结构如下:

HelloWorld
|-- HelloWorld
|-- manage.py
...
|-- TestModel
|   |-- __init__.py
|   |-- admin.py
|   |-- models.py
|   |-- tests.py
|   `-- views.py

 1.2.2 定义model文件

# models.py
from django.db import models
 
class Test(models.Model):
    name = models.CharField(max_length=20)
# test 是相当于一个对象实例,一张表
@model.CharField 代表字段定义成name

以上的类名代表了数据库表名,且继承了models.Model,类里面的字段代表数据表中的字段(name),数据类型则由CharField(相当于varchar)、DateField(相当于datetime), max_length 参数限定长度。

1.3.3 添加应用到settings文件

INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'TestModel',               # 添加此项
)

1.3.4  同步 models的操作到db

$ python3 manage.py migrate   # 创建表结构

$ python3 manage.py makemigrations TestModel  # 让 Django 知道我们在我们的模型有一些变更
$ python3 manage.py migrate TestModel   # 创建表结构

python3 manage.py makemigrations 

这里是指生成迁移文件,还未进行同步到数据库

python3 manage.py migrate

这里是将迁移同步到数据库,真值实现定义的表文件生成 

 资料参考:Django Model 详解__古时候的博客-CSDN博客_django modelDjango基础——Model篇(一)    到目前为止,当程序涉及到数据库相关操作时,我们一般都会这么操作:    (1)创建数据库,设计表结构和字段    (2)使用MySQLdb来连接数据库,并编写数据访问层代码    (3)业务逻辑层去调用数据访问层,执行数据库操作import MySQLdb def GetList(sql): db = MySQLdb...Django 测试平台搭建学习:admin 产品管理模块(一)https://blog.csdn.net/qq_38059635/article/details/87274142

上一篇:JENKINS使用DOCKER运行PYTEST并且出ALLURE报告


下一篇:VB中Sub过程与Function过程的区别