图书管理的图书增删改查
2022/4/5 6:20:23
本文主要是介绍图书管理的图书增删改查,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
```python from django.shortcuts import render,redirect,HttpResponse from app01 import models # Create your views here. def home(request): return render(request,'home.html') def book_list(request): # 先查询出所有的书籍信息 传递给html页面 book_queryset = models.Book.objects.all() return render(request,'book_list.html',locals()) def book_add(request): if request.method == 'POST': # 获取前端提交过来的所有数据 title = request.POST.get("title") price = request.POST.get("price") publish_date = request.POST.get("publish_date") publish_id = request.POST.get("publish") authors_list = request.POST.getlist("authors") # [1,2,3,4,] # 操作数据库存储数据 # 书籍表 book_obj = models.Book.objects.create(title=title,price=price,publish_date=publish_date,publish_id=publish_id) # 书籍与作者的关系表 book_obj.authors.add(*authors_list) # 跳转到书籍的展示页面 """ redirect括号内可以直接写url 其实也可以直接写别名 但是如果你的别名需要额外给参数的话,那么就必须使用reverse解析了 """ return redirect('book_list') # 先获取当前系统中所有的出版社信息和作者信息 publish_queryset = models.Publish.objects.all() author_queryset = models.Author.objects.all() return render(request,'book_add.html',locals()) def book_edit(request,edit_id): # 获取当前用户想要编辑的书籍对象 展示给用户看 edit_obj = models.Book.objects.filter(pk=edit_id).first() if request.method == 'POST': title = request.POST.get("title") price = request.POST.get("price") publish_date = request.POST.get("publish_date") publish_id = request.POST.get("publish") authors_list = request.POST.getlist("authors") # [1,2,3,4,] models.Book.objects.filter(pk=edit_id).update(title=title, price=price, publish_date=publish_date, publish_id=publish_id ) # 该第三张关系表 edit_obj.authors.set(authors_list) return redirect('book_list') publish_queryset = models.Publish.objects.all() author_queryset = models.Author.objects.all() return render(request,'book_edit.html',locals()) def book_delete(request,delete_id): # 简单粗暴 直接删除 models.Book.objects.filter(pk=delete_id).delete() # 直接跳转到展示页 return redirect('book_list') ```
这篇关于图书管理的图书增删改查的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?