Django小项目(图书管理系统)

功能

此图书系统包括增加书籍,删除书籍,编辑书籍,查看书籍。

增加书籍:判断其的请求方式,当为post请求时,根据用户输入的来进行增加,最后重定向到首页上。

删除书籍:根据书本id直接删除,最后重定向到首页,显示新的数据。

编辑书籍:需判断请求方式,根据书本id来进行编辑。

查看书籍:将books全部封装为字典类型,重定向到books页面上,最后根据路由转换器将书本信息全部输出。

数据库介绍

author为作者表,其中定义了nid、name及age分别代表着作者的id、姓名和年龄。

class Author(models.Model):
    nid = models.AutoField(primary_key=True)  #定义为主键
    name=models.CharField(max_length=32) #char类型,32
    age = models.IntegerField() #整型

Book表中定义了nid、title、publishDate、price、publish_id分别代表着书本的id、作者、出版日期、价格和出版社id。

class Book(models.Model):
    nid = models.AutoField(primary_key=True)
    title =models.CharField(max_length=32)
    publishDate = models.DateField()
    price = models.DecimalField(max_digits=5,decimal_places=2)#最多5位,小数点后最多两位。

这是建立了多对多关系,自动生成了id表。书可以有多个作者。

authors= models.ManyToManyField(to='Author')

Book_authors中是id表,其中定义了id、book_id、author_id分别代表着增加id、书本id和作者id。

Publish中定义的为出版社信息,其中定义了nid、name、city、email分别代表着出版社id、出版社姓名、出版社地点、出版社邮箱。

class Publish(models.Model):
    nid = models.AutoField(primary_key =True)
    name = models.CharField(max_length=32)
    city = models.CharField(max_length=32)
    email = models.EmailField()#email

定义了一对多关系,一本书只允许有一个出版社,但是出版社可以有多本书。

publish=models.ForeignKey(to='Publish',to_field='nid',on_delete=models.CASCADE)

项目功能演示(简单的CRUD)

项目首页

添加功能

编辑功能(修改了id为三号的基本信息)

 

领取方式!!

        扫码回复【图书管理系统】即可领取。

                        

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值