概述
一、设计系统表
Django中model层用来创建和存取数据。每个模型对应数据库中唯一的一张表。
每个模型对应一个python表,继承Django.db.models.Model类;
该模型的每个属性表示一个数据库字段;
打开……/sign/models.py添加以下代码:
from django.db import models
# Create your models here.
#发布会表
class Event(models.Model):
# 以下添加event表的各个字段
name = models.CharField(max_length=100)
limit = models.IntegerField()
status = models.BooleanField()
address = models.CharField(max_length=200)
start_time = models.DateTimeField('events time')
create_time = models.DateTimeField(auto_now=True)
# __str__()方法告诉python如何将对象以str的方式显示出来
def __str__(self):
#默认返回name
return self.name
#嘉宾表
class Guest(models.Model):
event = models.ForeignKey(Event,on_delete=models.CASCADE,)
realname = models.CharField(max_length=64)
phone = models.CharField(max_length=16)
email = models.EmailField()
sign = models.BooleanField()
create_time = models.DateTimeField(auto_now=True)
class Meta:
unique_together = ("event","phone")
def __str__(self):
return self.realname
创建好模型之后,在……/guest/下执行python manage.py makemigrations sign进行数据迁移。
二、admin后台管理
创建的发布会和嘉宾表修改admin.py:
from django.contrib import admin
from sign.models import Event,Guest
admin.site.register(Event)
admin.site.register(Guest)
接下来,访问127.0.0.1/8000/admin,输入账号密码后可以添加guest和event。
添加好event后,默认显示名字,接下来,我们让页面显示更多的字段,继续修改admin.py。创建EventAdmin类ModelAdmin,自定义list_display[]显示需要显示的字段。
from django.contrib import admin
from sign.models import Event,Guest
class EventAdmin(admin.ModelAdmin):
list_display = ['id','name','status','address','start_time']
class GuestAdmin(admin.ModelAdmin):
list_display = ['realname', 'phone', 'email', 'sign', 'create_time']
admin.site.register(Event,EventAdmin)
admin.site.register(Guest,GuestAdmin)
刷新页面之后发现会显示需要显示的字段了。
我们还可以继续优化,加一个搜索栏和过滤器。修改admin.py
search_fields用于创建字段的搜索器,可以设置搜索关键字匹配多个表字段;
list_filter用于创建字段过滤器;
三、基本数据访问
1、安装mysql
去官网https://www.mysql.com/cn/downloads/下载直接下载就行。
2、配置mysql
在搜索栏cmd输入mysql -u root -p命令进入mysql,输入账号密码登录。
3、创建guest库
使用命令create database guest 创建guest库;
4、安装pymysql
直接用pip install pymysql命令安装即可。
5、在Django中配置mysql
在……/guest/settings.py文件中修改数据库配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST':'127.0.0.1',
'PORT':'3306',
'NAME': 'guest',
'USER':'root',
'PASSWORD':'123456',
'OPTIONS': {
'init_command':"SET sql_mode='STRICT_TRANS_TABLES'",
},
}
}
接下来在……/guest下打开终端,输入python manage.py migrate进行数据同步,这时候很有可能报错,打开……/guest/init.py文件,修改如下:
import pymysql
pymysql.version_info = (1, 4, 13, "final", 0)
pymysql.install_as_MySQLdb()
继续执行python manage.py migrate命令进行数据同步。
由于更换了数据库,这时候我们需要重新创建超级管理员账号,输入python manage.py createsuperuser创建即可。
6、mysql管理工具
为了更方便的使用mysql,现在有很多mysql管理工具,比如Navicat,sqlyog等,可以执行下载安装即可。
最后
以上就是勤奋斑马为你收集整理的《web接口开发与自动化测试》--基于Python语言第三章的全部内容,希望文章能够帮你解决《web接口开发与自动化测试》--基于Python语言第三章所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复