当前位置:网站首页>ORM -- database addition, deletion, modification and query operation logic
ORM -- database addition, deletion, modification and query operation logic
2022-07-07 10:07:00 【chuntian_ tester】
1. Data acquisition logic
1.1 Get multiple pieces of data
1.2 Get a single piece of data
2. Create data logic
3. Modify the data logic
3.1 Data before modification
3.2 modify
3.3 After modification
4. Delete data logic
When deleting data from a table , From the table model, if you define foreign keys on_delete=models.CASCADE attribute , Then from the association in the table
Data will also be deleted .
The above example code :
# /projects/views.py
import json
from django.http import HttpResponse, JsonResponse
# Create your views here.
# Subapplication view
from django.views import View
from projects import models
class ProjectsView(View):
"""
Class view
:param View: Inherited from from django.views import View
:return: HttpResponse object
"""
def get(self, request):
# Query all project information
# GET /projects/
projects_list = []
qs = models.Projects.objects.all()
for item in qs:
projects_list.append(
{
'id': item.id,
'name': item.full_name,
'leader': item.leader,
'create_time': item.create_time,
'update_time': item.update_time,
}
)
return JsonResponse(projects_list, safe=False)
def post(self, request):
# New projects
# POST /projects/ json Format parameters
python_data = json.loads(request.body)
pro_obj = models.Projects.objects.create(full_name=python_data['name'], leader=python_data['leader'],
is_execute=python_data['is_execute'], desc=python_data['desc'])
result = {
'full_name': pro_obj.full_name,
'leader': pro_obj.leader,
'desc': pro_obj.desc,
'msg': ' Create success '
}
return JsonResponse(result, safe=False, status=203)
class ProjectDetailView(View):
def get(self, request, pk):
# Query the specified item
# GET /projects/<int:pk>/
pro_obj = models.Projects.objects.get(id=pk)
result = {
'id': pro_obj.id,
'name': pro_obj.full_name,
'leader': pro_obj.leader,
'create_time': pro_obj.create_time,
'update_time': pro_obj.update_time,
}
return JsonResponse(result, status=203)
def put(self, request, pk):
# Modification item
# PUT /projects/<int:pk>/ json Format parameters
python_data = json.loads(request.body)
count = models.Projects.objects.filter(id=pk).update(full_name=python_data['name'],
leader=python_data['leader'])
result = {
'data': python_data,
'msg': ' The update is successful ',
'count': count,
}
return JsonResponse(result, status=203)
def delete(self, request, pk):
# Delete the project
# DELETE /projects/<int:pk>
status = models.Projects.objects.filter(id=pk).delete()
result = {
'msg': f' Delete {pk} success ',
'count': status,
}
return JsonResponse(result, safe=False, status=203)
边栏推荐
- Parameter sniffing (2/2)
- Some test points about coupon test
- 一大波开源小抄来袭
- Wallys/IPQ6010 (IPQ6018 FAMILY) EMBEDDED BOARD WITH ON-BOARD WIFI DUAL BAND DUAL CONCURRENT
- Basic chapter: take you through notes
- ORM -- logical relation and & or; Sort operation, update record operation, delete record operation
- Application of C # XML
- Write it into the SR table in the way of flinksql. It is found that the data to be deleted has not been deleted. Refer to the document https://do
- 小程序弹出半角遮罩层
- CSDN salary increase technology - learn about the use of several common logic controllers of JMeter
猜你喜欢
中国首款电音音频类“山野电音”数藏发售来了!
Win10安装VS2015
Use 3 in data modeling σ Eliminate outliers for data cleaning
字节跳动 Kitex 在森马电商场景的落地实践
能源路由器入门必读:面向能源互联网的架构和功能
ES类和对象、原型
Google colab loads Google drive (Google drive is used in Google colab)
ORM模型--数据记录的创建操作,查询操作
Official media attention! The list of top 100 domestic digital collection platforms was released, and the industry accelerated the healthy development of compliance
小程序滑动、点击切换简洁UI
随机推荐
ES6中的原型对象
Arcgis操作: 批量修改属性表
2020浙江省赛
使用BigDecimal的坑
Guys, how can mysql-cdc convert the upsert message to append only
conda离线创建虚拟环境
Some thoughts on the testing work in the process of R & D
Main (argc, *argv[]) details
CDZSC_ 2022 winter vacation personal training match level 21 (1)
ORM模型--关联字段,抽象模型类
2020CCPC威海 J - Steins;Game (sg函数、线性基)
MySQL can connect locally through localhost or 127, but cannot connect through intranet IP (for example, Navicat connection reports an error of 1045 access denied for use...)
终于可以一行代码也不用改了!ShardingSphere 原生驱动问世
uboot机构简介
[original] what is the core of programmer team management?
Check the example of where the initialization is when C initializes the program
Selenium+bs4 parsing +mysql capturing BiliBili Tarot data
Introduction to automated testing framework
剑指 Offer II 107. 矩阵中的距离
arcgis操作:dwg数据转为shp数据