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


Posted in Python onMay 25, 2019

本文实例讲述了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程序设计有所帮助。

Python 相关文章推荐
python模拟登录百度代码分享(获取百度贴吧等级)
Dec 27 Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 Python
Python中的模块和包概念介绍
Apr 13 Python
python生成圆形图片的方法
Mar 25 Python
Python编程实现的简单神经网络算法示例
Jan 26 Python
Python对List中的元素排序的方法
Apr 01 Python
详解TensorFlow查看ckpt中变量的几种方法
Jun 19 Python
python实现二维数组的对角线遍历
Mar 02 Python
基于Django统计博客文章阅读量
Oct 29 Python
Python Web静态服务器非堵塞模式实现方法示例
Nov 21 Python
python使用smtplib模块发送邮件
Dec 17 Python
Python Pandas常用函数方法总结
Jun 15 Python
Django框架实现的分页demo示例
May 25 #Python
Flask框架工厂函数用法实例分析
May 25 #Python
Python中Numpy mat的使用详解
May 24 #Python
Python中Numpy ndarray的使用详解
May 24 #Python
numpy数组之存取文件的实现示例
May 24 #Python
Python实现使用request模块下载图片demo示例
May 24 #Python
Python实现操纵控制windows注册表的方法分析
May 24 #Python
You might like
php下将图片以二进制存入mysql数据库中并显示的实现代码
2010/05/27 PHP
PHP分页效率终结版(推荐)
2013/07/01 PHP
php文件缓存类汇总
2014/11/21 PHP
php htmlentities()函数的定义和用法
2016/05/13 PHP
滚动条变色 隐藏滚动条与双击网页自动滚屏显示代码
2009/12/28 Javascript
被jQuery折腾得半死,揭秘为何jQuery为何在IE/Firefox下均无法使用
2010/01/22 Javascript
通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
2014/05/05 Javascript
JS+CSS实现表格高亮的方法
2015/08/05 Javascript
实例代码详解jquery.slides.js
2015/11/16 Javascript
JS获取一个未知DIV高度的方法
2016/08/09 Javascript
微信小程序 wxapp内容组件 icon详细介绍
2016/10/31 Javascript
vue router总结 $router和$route及router与 router与route区别
2019/07/05 Javascript
vue实现设置载入动画和初始化页面动画效果
2019/10/28 Javascript
JavaScript逻辑运算符相关总结
2020/09/04 Javascript
python基础教程之循环介绍
2014/08/29 Python
Python基础语法(Python基础知识点)
2016/02/28 Python
在python 不同时区之间的差值与转换方法
2019/01/14 Python
基于树莓派的语音对话机器人
2019/06/17 Python
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
世界上最大的乐器零售商:Guitar Center
2017/11/07 全球购物
应届毕业生个人自我评价
2013/09/20 职场文书
社区党员先进事迹
2014/01/22 职场文书
《小熊住山洞》教学反思
2014/02/21 职场文书
函授本科个人自我鉴定
2014/03/25 职场文书
毕业设计说明书
2014/05/07 职场文书
优秀高中学生评语
2014/12/30 职场文书
行政文员岗位职责
2015/02/04 职场文书
学校清洁工岗位职责
2015/04/15 职场文书
初中班主任教育随笔
2015/08/15 职场文书
三严三实·严以律己心得体会
2016/01/13 职场文书
《黄道婆》教学反思
2016/02/22 职场文书
JavaScript 原型与原型链详情
2021/11/02 Javascript
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技
Python OpenCV超详细讲解读取图像视频和网络摄像头
2022/04/02 Python
Vue组件化(ref,props, mixin,.插件)详解
2022/05/15 Vue.js