Django框架搭建的简易图书信息网站案例

 更新时间:2019年05月25日 10:15:07   作者:SpecYue  
这篇文章主要介绍了Django框架搭建的简易图书信息网站案例,结合具体实例形式分析了基于Django框架实现图书信息管理网站的具体步骤、相关实现技巧与操作注意事项,需要的朋友可以参考下

本文实例讲述了Django框架搭建的简易图书信息网站。分享给大家供大家参考,具体如下:

创建Django项目,将数据库改为mysql,修改项目的urls.py文件

创建一个新应用,在应用里创建urls.py文件。

在应用的models.py里建表

from django.db import models
# Create your models here.
#一类
class BookInfo(models.Model):
 btitle=models.CharField(max_length=20)#图书名称
 bpub_date=models.DateField()#出版日期
 bread=models.IntegerField(default=0)#阅读量,默认为0
 bcomment=models.IntegerField(default=0)#评论量
 isDlete=models.BooleanField(default=False)#逻辑删除,默认不删除
#多类
class HeroInfo(models.Model):
 hname=models.CharField(max_length=20)
 hgender=models.BooleanField(default=False)
 hcomment=models.CharField(max_length=200)
 #定义一个关系属性
 hbook=models.ForeignKey('BookInfo')
 isDlete = models.BooleanField(default=False) # 逻辑删除,默认不删除

首页index.html查询所有图书信息,在views.py里完善index函数。

def index(request):
 # 1.查询出所有图书的信息
 books = BookInfo.objects.all()
 # 2.使用模板
 return render(request, 'booktest/index.html', {'books': books})

在template文件夹下的booketest文件夹下新建index.html文件。

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>图书信息</title>
</head>
<body>
<a href="/create" rel="external nofollow" >新增</a>
 <ul>
  {% for book in books %}
   <li><a href="/books{{ book.id }}" rel="external nofollow" >{{ book.btitle }}</a><a href="/delete{{ book.id }}" rel="external nofollow" >_删除</a></li>
  {% endfor %}
 </ul>
</body>
</html>

index.html里有一个create新增按钮,去view.py里添加create处理函数

def create(request):
 '''新增一本图书'''
 # 1.创建一个bookinfo对象
 b = BookInfo()
 b.btitle = '流星蝴蝶剑'
 b.bpub_date = date(1990, 1, 1)
 # 2.保存进数据库
 b.save()
 # 3.返回应答
 # return HttpResponse('ok')
 # 让浏览器返回首页
 return HttpResponseRedirect('/index')

数据库里添加上之后,重定向到首页index。

应用的urls.py文件里要写url(r'^create$',views.create),才能正确的跳转到create处理函数。

一个显示书里人物的details.html,从index.html用book.id去寻找书的数据。

去views.py写details处理函数

def details(request,bid):
 book=BookInfo.objects.get(id=bid)
 heros=book.heroinfo_set.all()
 return render(request,'booktest/details.html',{'book':book,'heros':heros})

新建details.html

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<body>
 <h1>{{book.btitle}}</h1>
英雄信息:
<br/>
<ul>
 {% for hero in heros %}
 <li>{{hero.hname}}--{{hero.hcomment}}</li>
  {% empty %}
  没有英雄信息
 {% endfor %}
</ul>
</body>
</html>

去应用的urls.py里把url地址和视图处理函数对应上

url(r'^books(\d+)$',views.details)

这里的(\d+)是需要传参到details视图处理函数。

github:https://github.com/zhangyuespec/Django

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

相关文章

  • CPython 垃圾收集器检测循环引用详解

    CPython 垃圾收集器检测循环引用详解

    这篇文章主要为大家介绍了CPython 垃圾收集器检测循环引用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Pytorch相关知识介绍与应用

    Pytorch相关知识介绍与应用

    最近又重拾了机器学习的相关技术,在本科毕设的阶段下学习使用了Tensorflow 2.x工具,当时也是不求甚解,直接拿来用了,但现在已经有充足的时间、精力和基础知识来重新学习一下
    2022-11-11
  • 详解Python+Pyecharts实现漏斗图的绘制

    详解Python+Pyecharts实现漏斗图的绘制

    漏斗图是一个简单的散点图,反映研究在一定样本量或精确性下单个研究的干预效应估计值。本文将用Python Pyecharts实现漏斗图的绘制,需要的可以参考一下
    2022-06-06
  • 详解pycharm的python包opencv(cv2)无代码提示问题的解决

    详解pycharm的python包opencv(cv2)无代码提示问题的解决

    这篇文章主要介绍了详解pycharm的python包opencv(cv2)无代码提示问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • Python学习笔记之Python的下载、脚本与交互模式、注释

    Python学习笔记之Python的下载、脚本与交互模式、注释

    这篇文章主要介绍了Python学习笔记之Python的下载、脚本与交互模式、注释,本文从基础开始学习Python,需要的朋友可以参考下
    2023-03-03
  • Python基础学习之反射机制详解

    Python基础学习之反射机制详解

    在Python中,反射是指通过一组内置的函数和语句,在运行时动态地访问、检查和修改对象的属性、方法和类信息的机制。本文将通过简单的示例和大家讲讲Python中的反射机制,希望对大家有所帮助
    2023-03-03
  • 利用python微信库itchat实现微信自动回复功能

    利用python微信库itchat实现微信自动回复功能

    最近发现了一个特别好玩的Python 微信库itchat,可以实现自动回复等多种功能,下面这篇文章主要给大家介绍了利用python微信库itchat实现微信自动回复功能的相关资料,需要的朋友可以参考学习,下面来一起看看吧。
    2017-05-05
  • 如何利用python实现列表嵌套字典取值

    如何利用python实现列表嵌套字典取值

    这篇文章主要介绍了如何利用python实现列表嵌套字典取值,首先通过将列表backup_unit_id全部提取出来,确定需要取值的对象展开文章内容,感兴趣的朋友可以看一下
    2022-06-06
  • 详解Django rest_framework实现RESTful API

    详解Django rest_framework实现RESTful API

    这篇文章主要介绍了详解Django rest_framework实现RESTful API,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Django自定义模板过滤器和标签的实现方法

    Django自定义模板过滤器和标签的实现方法

    这篇文章主要介绍了Django自定义模板过滤器和标签的实现方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08

最新评论