Django图书馆综合项目-学习(2)
接下来我们来实现一下图书管理系统的一些相关功能
1.在书籍的book_index.html中有一个"查看所有书毂"的超链接按钮,点击进入书籍列表book_list.html页面.
这边我们使用之前创建的命名空间去创建超连接
这里的book 是在根路由创建的namespace
list是在book的子路由创建的 name
这样可以看到我们已经成功实现了2个页面的跳转


2.在书籍的book_list.html中显示所有书名,点击书名可以进入书籍详情book_detail.html(通过书籍id)
我们现在视图函数中将数据库中的所有书的数据取出来

用for 循环将所有数据的书名取出来

可以看到所有书籍名字已经可以展现在页面上

点击书名跳转到详情页 将url再设置一下

3.在书籍book_detail.html中可以点击该书的作者和出版社,进入作者详情的author_detail.html和出版社详情的publisher_detail.html
视图函数中获取数据的数据



点击作者姓名可以挑战到作者的详情页
先在视图函数中获取author_id中对应作者的数据

作者详情页中将获取的数据展示出来


出版社的详情页面跳转也是一样
先将详情页的url添加好

在视图函数中获取pid对应的所有出版社数据

然后在将数据展示在详情页


以上是通过正向查询,通过作者查看作者详情,通过点击出版社查看出版社详情,下面我们如果想要通过反向查询 比如作者的所有书籍和出版社有哪些书籍
在用户详情页增加一个我的作品集通过for循环反向查询到对应的所有书籍


在查询出来的书名也写上了一个超连接 这样在点击后我们就可以再次跳转到书籍详情页

增加一个出版社所有书籍的查询

经过以上项目的练习 可以对Django的模型进一步的熟悉和加深
相关文章:
Django图书馆综合项目-学习(2)
接下来我们来实现一下图书管理系统的一些相关功能 1.在书籍的book_index.html中有一个"查看所有书毂"的超链接按钮,点击进入书籍列表book_list.html页面. 这边我们使用之前创建的命名空间去创建超连接 这里的book 是在根路由创建的namespacelist是在bo…...
vue3+ts 获取input 输入框中的值
从前端input 输入框获取值,通过封装axios 将值传给后端服务 数据格式为json html <el-form> <el-form-item label"域名"><el-input v-model"short_url" style"width: 240px"type"text"placeholder&quo…...
Gin框架返回Protobuf类型:提升性能的利器
在构建高效、高性能的微服务架构时,数据序列化和反序列化的性能至关重要。Protocol Buffers(简称Protobuf)作为一种轻量级且高效的结构化数据存储格式,已经在众多领域得到广泛应用。Gin框架作为Go语言中流行的Web框架,…...
HTML满屏漂浮爱心
目录 写在前面 满屏爱心 代码分析 系列推荐 写在最后 写在前面 小编给大家准备了满屏漂浮爱心代码,一起来看看吧~ 满屏爱心 文件heart.svg <svg xmlns"http://www.w3.org/2000/svg" width"473.8px" height"408.6px" view…...
爬虫应该选择住宅ip代理还是数据中心代理?
住宅代理 住宅代理是互联网服务提供商 (ISP) 提供的 IP 地址,它们是附加到实际物理位置的真实IP地址。住宅代理允许用户通过目标区域内的真实IP地址连接到互联网。 数据中心代理 数据中心代理是指是使用数据中心拥有并管理IP的代理,IP地址来源于数据中…...
百面算法工程师目录 | 深度学习目标检测、语义分割、分类上百种面试问答技巧
本文给大家带来的百面算法工程师是深度学习面试目录大纲,文章内总结了常见的提问问题,旨在为广大学子模拟出更贴合实际的面试问答场景。在这篇文章中,可以点击题目直达问题答案处,方便查找问题寻找答案。节约大家的时间。通过对这…...
Java中Maven的依赖管理
依赖介绍 是指当前项目运行所需要的jar包,一个项目中可以引入多个依赖 配置 在pom.xml中编写<dependencies>标签 在<dependencies>中使用<dependency>引入标签 定义坐标的groupId、rtifactId、version 点击刷新按钮、引入新坐标 例如引入下…...
Github新手入门使用方法
**存在问题:**新手如何快速入门github,能够下载开源文件,并且修改后更新远程github仓库; 解决方案: 参考: http://www.360doc.com/content/24/0301/12/60419_1115656653.shtml https://blog.csdn.net/gongd…...
期权隐含波动率到底是什么意思?
今天期权懂带你了解期权隐含波动率到底是什么意思?期权隐含波动率解析。通俗的说,期权隐含波动率是在期权市场中买家和卖家对于,某一期权合约价格变动幅度大小的判断。 期权隐含波动率到底是什么意思? 隐含波动率是根据期权市场价…...
28、Flink 为管理状态自定义序列化
为管理状态自定义序列化 a)概述 对状态使用自定义序列化,包含如何提供自定义状态序列化程序、实现允许状态模式演变的序列化程序。 b)使用自定义状态序列化程序 注册托管 operator 或 keyed 状态时,需要 StateDescriptor 来指…...
【强训笔记】day17
NO.1 思路:用一个字符串实现,stoi函数可以转化为数字并且去除前导0。 代码实现: #include <iostream> #include<string> using namespace std;string s;int main() {cin>>s;for(int i0;i<s.size();i){if(s[i]%20) s[…...
平滑 3d 坐标
3d平滑 import torch import torch.nn.functional as F import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3Dclass SmoothOperator:def smooth(self, vertices):# 使用一维平均池化进行平滑vertices_smooth F.avg_pool1d(vertices.p…...
Go解析的数据类型可能含有不同数据结构的处理方式
最近做一个需求,各种业务消息都会往我的消息队列中写各种类型的数据,服务端需要接受各种不同的参数然后转换为本地数据结构,Go语言不确定上游传过来的数值是什么类型,然后又下面四种解决方案。 1. 类型断言和类型切换 func (Mis…...
Java网络编程基础
Java网络编程基础主要涉及进程间通信、网络通信协议、IP地址和端口以及Java提供的网络应用编程接口等核心概念。 进程间通信是Java网络编程的基础。进程是运行中的程序,而进程间通信则是指不同进程之间进行数据交换和共享信息的过程。在Java中,进程间的…...
鸿蒙DevEco Studio 4.1 Release-模拟器启动方式错误
软件版本:DevEco Studio 4.1 Release 报错提示: 没有权限查看处理指导 Size on Disk 显示1.0MB 尝试方案(统统无效): 1、“windows虚拟机监控程序平台”、"虚拟机平台"已开启 启用CPU虚拟化 2、C…...
Linux与windows网络管理
文章目录 一、TCP/IP1.1、TCP/IP概念TCP/IP是什么TCP/IP的作用TCP/IP的特点TCP/IP的工作原理 1.2、TCP/IP网络发展史1.3、OSI网络模型1.4、TCP/IP网络模型1.5、linux中配置网络网络配置文件位置DNS配置文件主机名配置文件常用网络查看命令 1.6、windows中配置网络CMD中网络常用…...
一站式、低成本 | 等保一体机安全解决方案
方案建设背景 等级保护是我国关于信息安全的基本政策,相关政策制度要求单位开展等级保护工作。单位信息系统存在的安全隐患和不足,进行安全整改之后,提高信息系统的信息安全防护能力,降低系统被攻击的风险,维护单位良…...
Grafana(CVE-2021-43798)、Apache Druid 代码执行漏洞
文章目录 一、Grafana 8.x 插件模块目录穿越漏洞(CVE-2021-43798)二、Apache Druid 代码执行漏洞(CVE-2021-25646) 一、Grafana 8.x 插件模块目录穿越漏洞(CVE-2021-43798) Grafana是一个系统监测工具。 利…...
AI赋能EasyCVR视频汇聚/视频监控平台加快医院安防体系数字化转型升级
近来,云南镇雄一医院发生持刀伤人事件持续发酵,目前已造成2人死亡21人受伤。此类事件在医院层出不穷,有的是因为医患纠纷、有的是因为打架斗殴。而且在每日大量流动的人口中,一些不法分子也将罪恶的手伸到了医院,实行扒…...
Cocos Creator 3.x 实现触摸拖动物体(record)
参考:如何实现拖动物体 - Creator 3.x - Cocos中文社区 //注册触摸事件 node.on(Node.EventType.TOUCH_MOVE, this.onTouchMove, this); //事件回调函数 onTouchMove(event) {const location event.getUILocation();event.target.setWorldPosition(location.x, lo…...
科研不秃头!谁还不知道这个零代码生信神器
各位深陷生信泥潭的科研宝子们,集合啦!📢你是否也经历过这样的绝望:❌ 导师甩来一组单细胞数据,你却连 Linux 怎么登录都不知道?❌ 好不容易装好了 R 语言,结果包版本冲突报错到怀疑人生&#x…...
BIOS更新全攻略:从版本检查到安全升级的实用指南
1. BIOS更新前的必要准备 每次打开电脑时,那个一闪而过的黑底白字界面就是BIOS(基本输入输出系统),它就像是电脑硬件的"总指挥"。我见过太多人因为盲目刷BIOS导致主板报废的案例,所以更新前一定要做好这些准…...
嵌入式设备DHCP配置与优化实战
1. DHCP:嵌入式设备联网的智能管家在嵌入式系统开发中,网络连接往往是项目成败的关键。想象一下,一个智能工厂部署了上百个传感器节点,如果每个设备都需要手动配置IP地址,不仅耗时费力,还容易出错。这正是D…...
OpenClaw飞书机器人配置:Phi-3-mini-128k-instruct对话式任务触发
OpenClaw飞书机器人配置:Phi-3-mini-128k-instruct对话式任务触发 1. 为什么选择飞书OpenClawPhi-3的组合? 去年团队规模扩张到15人时,我突然发现每天要花2小时处理各种琐碎请求:"下周会议材料准备好了吗?"…...
文章标题:专业ASIC FPGA IP加密代码解密工具
专业 ASIC FPGA IP 加密代码解密工具 支持 Xilinx Vivado IP 解密,包括 ip、vp、iip、vip、dw、rtl、run 包等;还支持解密 Verilog、VHDL、SystemVerilog(sv、svp、svh、svi)等多种语言,能够解密所有加密文件 解密工具…...
Python数据类配置模式详解
在现代Python应用开发中,配置管理是一个关键环节。今天我们来深入分析一个优雅的配置管理实现,它展示了如何将环境变量配置与数据类完美结合。 核心概念 让我们先看一个典型的配置类实现: from __future__ import annotations import os from…...
AngularJS Http详解
AngularJS Http详解 引言 AngularJS是一个流行的JavaScript框架,用于构建动态和响应式的web应用。在AngularJS中,HTTP请求是数据交互的重要组成部分。本文将详细介绍AngularJS的Http服务,包括其基本用法、高级特性以及如何处理异步请求。 AngularJS Http服务简介 Angula…...
新手怎么安装OpenClaw?2026年新手10分钟部署OpenClaw及百炼APIKey配置指南
新手怎么安装OpenClaw?2026年新手10分钟部署OpenClaw及百炼APIKey配置指南。OpenClaw(原Clawdbot)作为2026年主流的AI自动化助理平台,可通过阿里云轻量服务器实现724小时稳定运行,并快速接入钉钉,让AI在企业…...
【物联网】基于STM32F429与TMS320F28377的储能变流器控制软件架构设计
目录 一、双处理器架构设计概述 (一)异构双核系统定位 (二)硬件资源协同策略 二、STM32F429ZGT6 核心功能开发 (一)系统管理模块设计 1. 任务调度与状态监控 2. 多源数据融合存储 (二&am…...
人生苦难的本质的庖丁解牛
“人生苦难的本质”,常被误解为“命运的不公”、“物质的匮乏”或“肉体的疼痛”。 但本质上,苦难并非来自外部世界的客观事件,而是源于**“内在预期”与“外在实相”之间的剧烈摩擦**,是**“有限的自我”试图掌控“无限的无常”时…...
