博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python实现图书管理系统
阅读量:3962 次
发布时间:2019-05-24

本文共 4442 字,大约阅读时间需要 14 分钟。

系统环境:

python 3.6 ,django 1.11.9 ,mysql 5.7

运行截图

在这里插入图片描述

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

项目目录

在这里插入图片描述

在这里插入图片描述

实现代码

Models部分代码:

from django.db import models# Create your models here.class Publisher(models.Model):    name=models.CharField(max_length=32)class Book(models.Model):    name=models.CharField(max_length=32)    publisher=models.ForeignKey(Publisher,on_delete=models.DO_NOTHING)#级联删除

出版社展示

前端

    
Title

出版社列表

新增
{% for i in all_publishers %}
{% endfor %}
序号 ID 出版社名称 操作
{ {forloop.counter}} { { i.pk }} { { i.name }} 删除 编辑

后端

from django.shortcuts import render,redirect,HttpResponsefrom app01 import models# Create your views here.#展示数据库def publisher_list(request):    all_publishers=models.Publisher.objects.all().order_by('id')#对象列表	return render(request,'publisher_list.html',{
'all_publishers':all_publishers})

出版社新增

前端

    
Title
新增出版社
{ { error }}

后端

#新增数据库def publisher_add(reqest):    #get请求    #post请求    if reqest.method=='POST':        pub_name=reqest.POST.get('pub_name')        if not pub_name:              return render(reqest,'publisher_add.html',{
'error':'出版社名称不能为空'}) if models.Publisher.objects.filter(name=pub_name):#数据库有重复 return render(reqest,'publisher_add.html',{
'error':'出版社名称已经存在'}) ret=models.Publisher.objects.create(name=pub_name) return redirect('/publisher_list/') return render(reqest,'publisher_add.html')

出版社删除

def publisher_del(request):    pk=request.GET.get('pk')    models.Publisher.objects.filter(pk=pk).delete()#查到对象删除    return redirect('/publisher_list/')

出版社编辑

前端

    
Title
新增出版社
{ { error }}

后端

def publisher_edit(request):    pk=request.GET.get('pk')    pub_obj=models.Publisher.objects.get(pk=pk)    if request.method=='GET':        return render(request,'publisher_edit.html',{
'pub_obj':pub_obj}) else: pub_name=request.POST.get('pub_name') pub_obj.name=pub_name pub_obj.save()#修改操作保存到数据库 return redirect('/publisher_list/')

转载地址:http://lwhzi.baihongyu.com/

你可能感兴趣的文章
Linux用户及用户组添加和删除操作
查看>>
通用 Makefile 的编写方法以及多目录 makefile 写法
查看>>
C++的4种智能指针剖析使用
查看>>
RPC框架实现之容灾策略
查看>>
Docker私库
查看>>
hdu——1106排序(重定向)
查看>>
hdu——1556Color the ball(树状数组)
查看>>
hdu——1541Stars(树状数组)
查看>>
快速幂的精简代码
查看>>
求大数乘方的前n位数字(对数加快速幂)
查看>>
hdu——2602Bone Collector(第一类背包问题)
查看>>
hdu——1711Number Sequence(kmp专练)
查看>>
strstr函数和find函数的异同
查看>>
Java的反射
查看>>
HTTP请求之POST与GET区别
查看>>
SSM结合Redis
查看>>
优化数据库的八种方法
查看>>
Java Web服务收到请求时线程的情况以及session情况
查看>>
SSM配置文件信息加密实现
查看>>
@Produces注解
查看>>