美文网首页web服务器
模型使用(数据库中数据的增加、修改、删除)

模型使用(数据库中数据的增加、修改、删除)

作者: GHope | 来源:发表于2018-09-22 14:00 被阅读30次

基本准备

模型使用步骤
模块(app --> models.py)中创建目标类(数据库中的关系表)--> 接口管理(dbOperatiob --> urls.py)中创建访问连接(浏览器中的访问地址)--> 业务逻辑(app --> views.py)中实现用到的函数(具体对数据库的操作)

创建目标类(只需首次创建,后根据各操作需求再修改什么的,如无需求,则无需修改)

class Poet(models.Model):
    p_name = models.CharField(max_length=10, unique=True, verbose_name='姓名')
    p_sex = models.BooleanField(default=1, verbose_name='性别')
    p_age = models.IntegerField(default=66, verbose_name='年龄')
    create_time = models.DateTimeField(auto_now_add=True, verbose_name='创建时间')
    operate_time = models.DateTimeField(auto_now=True, verbose_name='修改时间')

创建接口访问地址

from app import views

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url('create_poet/', views.create_poet),
    url('update_poet/', views.update_poet),
    url('delete_poet/', views.delete_poet),
]

create

from django.http import HttpResponse
from django.shortcuts import render

# 创建诗人信息
from app.models import Poet


def create_poet(request):
    # 第一种方式
    Poet.objects.create(p_name='李白')
    # 第二种方式
    poet = Poet()
    poet.p_name = '杜甫'
    poet.save()
    # 第三种方式
    # poet = Poet('李清照',33,0)
    # poet.save()
    return HttpResponse('创建学生方法')

注:第三种方式需要对Poet类进行初始化(记得super方法的调用,应该是因为继承类之后对属性的操作有些冲突吧,反正不super一下是会报错的)

# def __init__(self, name, sex, age, *args, **kwargs):
    #     super().__init__(*args, **kwargs)
    #     self.p_name = name
    #     self.p_sex = sex if sex else self.p_sex
    #     self.p_age = age if age else self.p_age

一个小技巧:通过设置简化省略python manage.py runserver命令的执行

单击下拉框
设置命令
此时即可通过点击下拉框旁边的绿色小三角代替原来的指令功能
点击运行

进入浏览器访问验证


页面无法找到

想了一下,应该是添加目标类之后需要需要进行数据迁移。数据库中才会有数据关系表,才能进行数据操作。

添加成功

进入数据库中查看

确认添加成功

update

此时数据库中信息

决定将李白的名字改为太白,李清照的年龄改为二八年华

def update_poet(request):
    # 第一种
    # poet = Poet.objects.filter(pk=1).first()
    # poet.p_name = '太白'
    # poet.save()

    # 第二种
    Poet.objects.filter(id=3).update(p_age = 16)

    return HttpResponse('更新诗人信息')

通过浏览器访问实现修改

修改成功

查看数据库验证是否修改成功


修改成功

不知道为什么,Navicat突然一直闪退,就换了SQLyog做验证。

delete

删除杜甫的信息

def delete_poet(request):
    Poet.objects.filter(pk=2).first().delete()
    return HttpResponse('删除诗人信息')

通过浏览器访问删除之后进入数据库验证


删除成功

相关文章

  • CoreData增删改查

    创建模型 创建数据库 增加数据 删除数据 修改数据 查询数据

  • 模型使用(数据库中数据的增加、修改、删除)

    基本准备 模型使用步骤模块(app --> models.py)中创建目标类(数据库中的关系表)--> 接口管理...

  • Mysql 数据库

    数据库的主要操作包括: 数据库的操作:创建、删除 表的操作:创建、修改、删除 数据的操作:增加、修改、删除、查询 ...

  • Mysql常用命令

    基础操作 创建数据库 删除数据库 创建表 删除表 插入数据 查询数据及函数处理 修改数据 增加字段 删除字段 复制...

  • MySQL常用语句

    创建数据库 删除数据库 修改数据库名 创建新表 根据旧表创建新表 删除表 修改表的名字 增加一个列 删除一个列 修...

  • 25. Flask 数据库迁移 flask-migrate

    数据库迁移 在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失...

  • 数据库修改

    数据库表结构修改(Postgresql) 增加字段 删除限制 修改主键生成方式

  • mongodb基本命令

    连接数据库 显示所有数据库 使用数据库 查看表 插入数据 查询表数据 修改表数据 删除表数据 删除表 删除数据库

  • flask入门到起飞(九)数据库迁移和Flask-Migrate

    在开发过程中,需要修改数据库模型,而且还要在修改之后更新数据库。最直接的方式就是删除旧表,但这样会丢失数据。更好的...

  • DDL-数据定义语言

    1、库 创建数据库 删除数据库 2、表 创建表 删除表 3、列 增加列 删除列 修改列 4、键 添加主键 删除主键...

网友评论

    本文标题:模型使用(数据库中数据的增加、修改、删除)

    本文链接:https://www.haomeiwen.com/subject/doregftx.html