python Django如何实现增删改查
发表于:2025-02-12 作者:千家信息网编辑
千家信息网最后更新 2025年02月12日,这篇文章主要介绍python Django如何实现增删改查,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1.先创建个app子级python .\manage.py starta
千家信息网最后更新 2025年02月12日python Django如何实现增删改查
这篇文章主要介绍python Django如何实现增删改查,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
1.先创建个app子级
python .\manage.py startapp app01
然后创建数据模型
app01下的
modules.py文件
from django.db import models# Create your models here.class UserInfo(models.Model): name=models.CharField(max_length=32) password=models.CharField(max_length=12) age=models.IntegerField() tel=models.IntegerField(max_length=11)
配置数据库
'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '数据库名', 'USER': '数据库用户名', 'PASSWORD': '密码', 'HOST': '127.0.0.1', 'PORT': '3306', }
2.迁移数据库
python manage.py makemigrations 和 python manage.py migrate
3.写路由url
from django.contrib import adminfrom django.urls import path,includefrom app01 import viewsurlpatterns = [ # path('admin/', admin.site.urls), # path('index/',views.index), # path('user/list/', views.user_list), # path('login/', views.ApiLogin.as_view()), # path('del/', views.ApiDel.as_view()), path('add/', views.addUser.as_view()), path('user/', views.UserList.as_view()), path('updateuser/', views.upDateUser.as_view()), path('del/', views.deluser.as_view()),]
4.view页面编写增删改查
from django.shortcuts import render,HttpResponsefrom rest_framework.views import APIView# Create your views here.from django import viewsfrom app01.models import UserInfofrom rest_framework.response import Responsefrom app01.ser import APIViewUserInfoclass addUser(APIView): def post(self,request): obj=APIViewUserInfo(data=request.data) if obj.is_valid(): obj.save() return Response({"data":obj.data, "status" : 201,"message":"添加用户成功"}) return Response(data=obj.errors,status=400)class UserList(APIView): def get(self,request): obj=UserInfo.objects.all() ser=APIViewUserInfo(instance=obj,many=True) return Response(ser.data)class upDateUser(APIView): def post(self,request): print(request.data.get('id')) i=request.data.get('id') try: user=UserInfo.objects.get(id=i) except Exception as e: return Response(data='不存在', status=201) # 创建序列化对象,并将要反序列化的数据传递给data构造参数,进而进行验证 user.password=request.data.get('password') if request.data.get('name')!='': print(request.data.get('name')=='') user.name=request.data.get('name') user.save() return Response(status=400)class deluser(APIView): def post(self,request): id=request.data.get('id') UserInfo.objects.filter(id=id).delete() return Response({"msg":'删除成功',"state":"true"})# def index(request):# return HttpResponse("欢迎使用")### def user_list(request):# return render(request,"user_list.html")## class ApiLogin(APIView):# def get(self,request):# return HttpResponse('get')# def post(self,request):# UserInfo.objects.create(name='张三',password='123456',age=15,tel='1234567891')# obj=UserInfo.objects.all()# print(obj)# return HttpResponse('post')## class ApiDel(APIView):# def post(self,request):# UserInfo.objects.filter(id=4).delete()# return HttpResponse('删除成功')
5.序列化 反序列化
# -*- coding: utf-8 -*-from rest_framework import serializersfrom app01.models import UserInfoclass APIViewUserInfo(serializers.Serializer): """图书数据序列化器""" id = serializers.IntegerField(label='ID', read_only=True) # 主键序列化 # 第一:普通字段序列化 name = serializers.CharField(label='名称', max_length=20) password = serializers.CharField(label='密码') age = serializers.IntegerField(label='年龄', required=False) tel = serializers.IntegerField(label='电话', required=False) # # 第二:一对多字段序列化 # heroinfo_set = serializers.PrimaryKeyRelatedField(read_only=True, many=True) # # 第三:自定义显示(显示多对多) # xxx = serializers.SerializerMethodField(read_only=True) class Meta: model = UserInfo # 自定义显示 多对多 字段 # 定义创建语法:ser.save()执行,就会立刻调用create方法用来创建数据 def create(self, validated_data): '''validated_data: 表单或者vue请求携带的json:{"username":"zhangsan","password":"123456"}''' return self.Meta.model.objects.create(**validated_data)
以上是"python Django如何实现增删改查"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
序列
数据
数据库
成功
字段
内容
密码
用户
篇文章
普通
价值
兴趣
参数
名称
图书
对象
小伙
小伙伴
年龄
文件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
金飞鹰软件开发公司
软件开发哪种公司不用出差
零点软件开发
xp和win10共享数据库
机械去车企软件开发
国务院网络安全宣传日
重庆渝小司互联网科技
长春dell服务器
电厂保障网络安全方案
税务网络安全自查培训信息
网络安全大型第五空间
本地数据库ip地址
数据库计算方法
刀片服务器主板diy
江西方便软件开发电话多少
软件开发过程评价
admin数据库查询
网站数据库什么意思
lls服务器是什么意思
报送网络安全情况表
挽联软件开发公司
通美网络技术服务有限公司流量
广东音视云空间软件云服务器
抖音的服务器升级是在哪里
洛圣都服务器管理员
传统服务器按结构分类
简述数据库软件的概念
软件开发和数学关系
登陆OECD数据库很卡
网络安全大赛登陆