(django)05 django sqlite增删改查

本文详细介绍了使用Django进行数据库操作的方法,包括Model定义、用户添加、更新、删除和查询功能的实现。通过示例代码展示了如何创建Person模型,以及如何通过视图函数实现CRUD操作,最后调整路由实现不同功能的访问。这些内容对于理解和应用Django的数据库操作非常有帮助。
摘要由CSDN通过智能技术生成

django增删改查

0.model

Person.py

from django.db import models

class Person(models.Model):
    id=models.IntegerField(primary_key=True,auto_created=True)
    first_name=models.CharField(max_length=30)
    last_name=models.CharField(max_length=30)
    gender=models.CharField(max_length=5)
    birthday=models.DateField()

1.add

from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def addUser(request):
    back_msg={'code':1000,'msg':'添加成功'}
    print(request.POST)
    # # 第一种写法
    # Person.objects.create(id=request.POST['id'],
    #                       first_name=request.POST['first_name'],
    #                       last_name=request.POST['last_name'],
    #                       birthday=request.POST['birthday'],
    #                       gender=request.POST['gender'],
    #                       )

    # 第二种写法
    p=Person()
    p.id=request.POST.get('id')
    p.first_name = request.POST.get('first_name')
    p.last_name = request.POST.get('last_name')
    p.birthday = request.POST.get('birthday')
    p.gender = request.POST.get('gender')
    p.save()
    return JsonResponse(back_msg)

2.update

@csrf_exempt
def updateUser(request):
    back_msg = {'code': 1001, 'msg': '更新失败'}
    id=request.GET.get('id','')
    first_name = request.GET.get('first_name','')
    last_name = request.GET.get('last_name','')
    birthday = request.GET.get('birthday','')
    gender = request.GET.get('gender','')
    if id:
        Person.objects.filter(id=id).update(first_name=first_name,last_name=last_name,
                                            birthday=birthday,gender=gender
                                            )
        back_msg['code']=1000
        back_msg['msg']="更新成功"
        return JsonResponse(back_msg)

3.delete

def deleteUser(request):
    back_msg = {'code': 1001, 'msg': '删除失败'}
    id=request.GET.get('id','')
    if id:
        Person.objects.filter(id=id).delete()
        back_msg['code']=1000
        back_msg['msg']='删除成功'
        return JsonResponse(back_msg)

4.query

def queryUser(request):
    back_msg = {"code": 1001, "msg": "查询失败"}
    objs=Person.objects.all()
    data=[{
        "id":obj.id,"first_name":obj.first_name,
        "last_name": obj.last_name, "birthday": obj.birthday,
        "gender": obj.gender
    } for obj in objs]

    if data:
        back_msg["code"]=1000
        back_msg["msg"] = "查询成功"
        back_msg["data"]=data
        print(back_msg)
        return JsonResponse(back_msg)

5.修改路由

    path('addUser', addUser),
    path('deleteUser', deleteUser),
    path('updateUser', updateUser),
    path('queryUser', queryUser),

6.效果

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值