Django搭建图书管理系统04:View视图初探

这篇具有很好参考价值的文章主要介绍了Django搭建图书管理系统04:View视图初探。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

数据库虽然已经有了,但是用户通常只需要这个庞大数据库中的很小一部分进行查看、修改等操作。为此还需要代码来恰当的取出并展示数据,这一部分代码就被称为视图

Django 中视图的概念是**「一类具有相同功能和模板的网页的集合」**。

Hello World!

首先写一个最简单的视图函数,在浏览器中打印出Hello World!字符串。

打开book/views.py,写出视图函数:

# book/views.py
from django.shortcuts import render
from django.http import HttpResponse

# 视图函数
def book_list(request):
    return HttpResponse("图书管理员你好!")

**网页都是从视图派生而来。**每一个视图表现为一个简单的Python函数,它必须要做的只有两件事:返回一个包含被请求页面内容的 HttpResponse对象,或者抛出一个异常,比如 Http404

视图函数中的request与网页发来的请求有关,里面包含getpost的内容、用户浏览器、系统等信息。Django调用book_list函数时会返回一个含字符串的 HttpResponse对象。

有了视图函数,还需要配置URLconfs,将用户请求的URL链接关联起来。换句话说,URLconfs的作用是将URL映射到视图中。

前面的文章中已经将URL分发给了book应用,因此这里只需要修改之前添加的book/urls.py就可以。添加以下代码:

# book/urls.py
from django.urls import path
from . import views

# 正在部署的应用的名称
app_name = 'book'

# 存放映射关系的列表
urlpatterns = [
    # path函数将url映射到视图
    path('', views.book_list, name='book_list'),
]

**Django 将会根据用户请求的 URL 来选择使用哪个视图。**本例中当用户请求book链接时,会调用views.py中的book_list函数,并返回渲染后的对象。参数name用于反查url地址,相当于给url起了个名字,以后会用到。

测试一下刚才敲的代码是否工作正常。

终端中输入python manage.py runserver,运行调试服务器:

(venv) PS E:\djangopj\library> python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...

System check identified no issues (0 silenced).
July 06, 2023 - 13:33:02                               
Django version 4.2.3, using settings 'library.settings'
Starting development server at http://127.0.0.1:8000/  
Quit the server with CTRL-BREAK.   

成功运行后,打开浏览器,输入url地址http://127.0.0.1:8000/book,其中127.0.0.1:8000是调试服务器的本地地址,book是项目路由library\urls.py分发的地址

运气好的话,浏览器中会打印出图书管理员你好!字符串:

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

准备工作

在章节编写Model模型中虽然定义了数据库表,但是这个表是空的,不方便展示View调取数据的效果。所以在写View之前,需要往数据表里记录一些数据。接下来就做这个工作。

网站后台概念

网站后台,有时也称为网站管理后台,是指用于管理网站的一系列操作,如:数据的增加、更新、删除等。在项目开发的初期,因为没有真实的用户数据和完整的测试环境,会频繁地使用后台修改测试数据。

Django内置了一个很好的后台管理工具,只需要些少量代码,就可以实现强大的功能。

创建管理员账号(Superuser)

管理员账号(Superuser)是可以进入网站后台,对数据进行维护的账号,具有很高的权限。这里我们需要创建一个管理员账号,以便添加后续的测试数据。

终端里输入python manage.py createsuperuser指令,创建管理员账号:

(env) E:\django_project\my_blog>python manage.py createsuperuser
Username: dusai
Email address: dusaiphoto@foxmail.com
Password:
Password (again):
Superuser created successfully.

指令会提示你输入账号名字、邮箱和密码,根据喜好填入即可。

将bookPost注册到后台中

接下来我们需要“告诉”Django,后台中需要添加bookPost这个数据表供管理。

打开book/admin.py,写入以下代码:

book/admin.py

from django.contrib import admin

# 别忘了导入bookrPost
from .models import bookPost

# 注册bookPost到admin中
admin.site.register(bookPost)

这样就简单的注册好了。

在后台中遨游

细心的同学可能已经发现,Django项目生成的时候就自动配置好了后台的settings和url,因此不需要我们再操心了。

启动server,在浏览器中输入http://127.0.0.1:8000/admin/,一切正常的话就看到下面的登录界面了:
Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

输入刚才创建的管理员账号,登录进去:

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

红框内就是刚才添加的bookPost数据表,点击进入后,再点击右上角的ADD book 按钮,到达如下页面:

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

仔细看一下表单中的每一项,发现与book中的字段完全符合;因为updated字段指定了自动添加,这里就没显示了。

将表单填好后,点击保存:

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

可以看到book中多了刚才录入的一条数据。按照同样的方法,再写入几条数据:

至此准备工作就已经大功告成。

检视数据库

2018-10-29 新增内容

通过上面的操作,我们的数据库中已经有1条用户数据、3条文章数据了。

这时候就需要用到数据库可是软件:Navicat Premium 一套可创建多个连接的数据库开发工具,让你从单一应用程序中同时连接 MySQL、Redis、MariaDB、MongoDB、SQL Server、Oracle、PostgreSQL 和 SQLite 。它与 OceanBase 数据库及 Amazon RDS、Amazon Aurora、Amazon Redshift、Amazon ElastiCache、Microsoft Azure、Oracle Cloud、MongoDB Atlas、Redis Enterprise Cloud、阿里云、腾讯云和华为云等云数据库兼容。你可以快速轻松地创建、管理和维护数据库。

下载并安装,用它链接MySQL,查看项目数据库表。比如说auth_user就是用户数据表了:

Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite
Django搭建图书管理系统04:View视图初探,Django图书管理,django,数据库,sqlite

你可以用它检查项目代码中数据库的操作是否正常,这在开发阶段是非常实用的。

总结

本章初步感受了View的工作模式,创建了Superuser在后台录入了几条测试数据。

下一章将编写更有意义的View,准备好后老司机就开车了。文章来源地址https://www.toymoban.com/news/detail-552907.html

到了这里,关于Django搭建图书管理系统04:View视图初探的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Django图书商城系统实战开发-实现订单管理

    在本教程中,我们将继续基于Django框架开发图书商城系统,这次的重点是实现订单管理功能。订单管理是一个电子商务系统中非常重要的部分,它涉及到用户下单、支付、发货以及订单状态的管理等方面。通过学习本教程,您将了解如何使用Django框架来构建强大的订单管理系

    2024年02月12日
    浏览(42)
  • Django图书商城系统实战开发-实现商品管理

    在本教程中,我们将使用Django框架来实现一个简单的图书商城系统,并重点讨论如何实现商品管理功能。此外,我们还将介绍如何使用Markdown格式来写博客,并将其集成到我们的图书商城系统中。 Django是一个强大的Python Web框架,被广泛应用于开发各种类型的Web应用程序,包括

    2024年02月12日
    浏览(36)
  • Vue_Django 登录注册+图书管理系统

    点击查看代码 点击查看代码 点击查看代码 点击查看代码 点击查看代码

    2024年02月08日
    浏览(30)
  • python+django在线借阅图书管理系统vue

    本论文是以构建图书借阅为目标,使用  django框架制作,由系统前台、读者和管理员三大部分组成。着重论述了系统设计分析,系统的实现(读者注册模块,读者登录,读者浏览图书模块,图书借阅模块,图书归还模块,管理员登录等)以及后台数据库管理。从网站设计到具

    2024年02月07日
    浏览(37)
  • 基于Django图书管理系统 毕业设计源码64946

    赠送源码-毕业设计:django图书管理系统 https://www.bilibili.com/video/BV1Dw411J7Uf/?vd_source=72970c26ba7734ebd1a34aa537ef5301 Django图书管理系统 摘  要 大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为

    2024年01月23日
    浏览(52)
  • 图书推荐管理系统Python,基于Django和协同过滤算法等实现

    图书推荐系统 / 图书管理系统,以Python作为开发语言,基于Django实现,使用协同过滤算法实现对登录用户的图书推荐。 视频+代码:https://www.yuque.com/ziwu/yygu3z/gq555ph49m9fvrze Django是一个强大而灵活的Python Web框架,它为开发人员提供了一种高效构建Web应用程序的方式。Django的设计

    2024年02月12日
    浏览(42)
  • Python+Django+MySQL的图书馆管理系统【附源码,运行简单】

    自己做的项目,禁止转载,基于Python+Django+MySQL的图书馆管理系统,带用户登录、注册,基本的出版社、作者、图书信息的增删改查功能,还有分页功能,用Pycharm导入,安装依赖包,配置好数据库就可以正常运行了,里面的代码都含有注释,结构简单,清晰易懂,看一下就会

    2024年01月17日
    浏览(41)
  • 图书管理系统的搭建

    流程图 页面跳转: 代码整体布局: 导入框架和包: 实现效果: 在innodb存储引擎下,会到自增断层,如下(pid=4): 不适用拼接,正常插入: 代码部分: 创建数据库: 创建表: BaseDAO: Books: IBooksDAO: BooksDAOImpl: IBooksService: BooksServiceImpl: bookList.jsp: add.jsp: update.jsp: Bo

    2024年02月09日
    浏览(42)
  • django的简易的图书管理系统jsp书店进销存源代码MySQL

    本项目为前几天收费帮学妹做的一个项目,Java EE JSP项目,在工作环境中基本使用不到,但是很多学校把这个当作编程入门的项目来做,故分享出本项目供初学者参考。 django的简易的图书管理系统 系统有1权限:管理员 用所技术 python3.10 django mysql5.6 注册登录和书籍信息的增删

    2024年02月11日
    浏览(35)
  • 使用eclipse创建一个图书管理系统(1)-----搭建架构

    目录 思维导图: 图书管理系统的创建: 第一步:搭建框架-------使用者 第二步:搭建框架------被使用者 第三步:操作方法 第四步:main函数  前言: 昨天学了一下使用Java语言来写一个图书管理系统,于是今天写一篇博客作为一个小笔记巩固一下自己学到的知识!博主也是刚

    2024年02月02日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包