之前用django框架打了一个简易的博客网站,现在说说怎么用django做超链接。

本文基于之前讲解的博客应用,如果只想学超链接请自行删减代码或评论提问。

首先,在templates文件夹下添加details.html文件:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{{ data.title }}</title>
</head>
<body>
<h2>{{ data.title }}</h2>
<img style="width: 450px;height: 300px;" src="{{ data.img }}">
</body>
</html>

然后,再添加menu.html文件:

<html lang="en">
<head>
<meta charset="UTF-8">
<title>Carton</title>
</head>
<body>
<ul>
{% for item in data %}
<li>
<a href="/details/{{ item.id }}">{{ item.title }}</a>
</li>
{% endfor %}
</ul>
</body>
</html>

切记,html文件不能有中文!!!不然UTF-8编码会出错,页面会显示UnicodeError。

然后就开始建立连接了:

先打开views.py;

from django.shortcuts import render,redirect,render_to_response
from blog.models import BlogsPost # Create your views here. def blog_index(request):
blog_list = BlogsPost.objects.all()
return render(request,'index.html', {'blog_list': blog_list}) def blog_school(request):
return redirect('https://www.dlmu.edu.cn/') def details_render(response, id):
data = {
"1": {"title": "one",
'img': 'http://photocdn.sohu.com/20140303/Img395937155.jpg'},
"2": {"title": "two",
'img': 'http://p4.so.qhmsg.com/sdr/400__/t01145220e19e14dd69.jpg'},
"3": {"title": "three",
'img': 'http://uploads.5068.com/allimg/1812/224-1Q21Q51239.jpg'},
"4": {"title": "four",
'img': 'http://www.chinaqw.com/zhwh/2016/09-06/U682P894T5D102134F42DT20160906113524.jpg'},
"5": {"title": "five",
'img': 'https://p1.ssl.qhmsg.com/t01409ee9dd99712d8c.jpg'}
}.get(id)
return render_to_response("details.html", locals()) def menu_list(request):
data = [
{"id": 1, "title": "The Chinese dream"},
{"id": 2, "title": "Core socialist values"},
{"id": 3, "title": "Reform and opening up"},
{"id": 4, "title": "The Belt and Road"},
{"id": 5, "title": "Dalian Maritime University"}
]
return render_to_response("menu.html", locals())

接下来添加URL:

打开urls.py:

from django.conf.urls import url
from django.urls import path,re_path
from django.contrib import admin
from blog import views urlpatterns = [
url('admin/', admin.site.urls),
url(r'^blog/$',views.blog_index,name='index'),
url(r'^school/$',views.blog_school),
path('menu_list/',views.menu_list),
re_path(r'details/(?P<id>\d{1,2})',views.details_render),
]

这是运行程序,输入 http://127.0.0.1:8000/menu_list 即可打开超链接。

python django超链接的更多相关文章

  1. 基于Python+Django的Kubernetes集群管理平台

    ➠更多技术干货请戳:听云博客 时至今日,接触kubernetes也有一段时间了,而我们的大部分业务也已经稳定地运行在不同规模的kubernetes集群上,不得不说,无论是从应用部署.迭代,还是从资源调 ...

  2. python——django使用mysql数据库(二)

    上一篇中,我们已经讲述了如何初始化一个django数据库,这一章就来讲讲在实际的项目中如何使用我们初始化的数据库呢? 如还未进行初始化数据库操作,请参考python——django使用mysql数据库 ...

  3. python——django使用mysql数据库(一)

    之前已经写过如何创建一个django项目,现在我们已经有了一个小骷髅,要想这个web工程变成一个有血有肉的人,我们还需要做很多操作.现在就先来介绍如何在django中使用mysql数据库. 前提:已经 ...

  4. 如何查看PYTHON Django的保存路径

    如何查看PYTHON Django的保存路径 $ python -c " import sys sys.path = sys.path[1:] import django print(dja ...

  5. python Django教程 之 模型(数据库)、自定义Field、数据表更改、QuerySet API

    python  Django教程  之 模型(数据库).自定义Field.数据表更改.QuerySet API 一.Django 模型(数据库) Django 模型是与数据库相关的,与数据库相关的代码 ...

  6. python Django教程 之模板渲染、循环、条件判断、常用的标签、过滤器

    python3.5 manage.py runserver python Django教程 之模板渲染.循环.条件判断.常用的标签.过滤器 一.Django模板渲染模板 1. 创建一个 zqxt_tm ...

  7. python Django教程 之 安装、基本命令、视图与网站

    python  Django教程  之 安装.基本命令.视图与网站 一.简介 Django 中提供了开发网站经常用到的模块,常见的代码都为你写好了,通过减少重复的代码,Django 使你能够专注于 w ...

  8. python django 多级业务树形结构规划及页面渲染

    概述: 在项目中,父级到子级结构并不少见,如果仅仅的两层树形结构,我们可以使用数据库的外键设计轻松做到,子级业务表设计一字段外键到父级业务表,这样子到父.父到子的查询都非常简单. 但是往往父子结构会有 ...

  9. Python.Django视频教程(全13集)

    Python.Django视频教程(全13集)教程目录: 下载地址:http://www.fu83.cn/thread-205-1-1.html

随机推荐

  1. 【FAQ】【Push Kit】 华为怎么设置角标

    ​[问题描述] HMS Core Push 怎么设置角标?角标设置不成功如何去排查问题? [问题解答] 华为推送怎么设置角标? 1.消息体设置 我们可以参考桌面角标这一篇文档进行设置角标 ​ 2.端测 ...

  2. Java SE 11 新增特性

    Java SE 11 新增特性 作者:Grey 原文地址:Java SE 11 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  3. linux项目环境部署入门

    linux目录 /bin 二进制可执行命令 (ls,cat,mkdir等) /dev 设备特殊文件/etc 系统管理和配置文件/etc/rc.d 启动的配置文件和脚本 /opt 额外安装的可选应用程序 ...

  4. Java接口自动化测试框架系列(一)自动化测试框架

    一.什么是自动化测试 自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程. 通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例一步步执行测试,得到实际结果与期望结果的比较. 为了节省 ...

  5. React Native 入门 调试项目

    不管时用哪种语言,哪种框架,调试永远都是一个避不开的话题 为我们提供了远程调试的功能,而这个功能需要Chrome浏览器的配合. 1. 首先浏览器一定要安装好React Developer Tool 插 ...

  6. R语言-tidyr和dplyr

    一.安装和加载 1.安装并加载tidyr和dplyr包 install.packages("tidyr") library(tidyr) install.packages(&quo ...

  7. Redis变慢?深入浅出Redis性能诊断系列文章(一)

    (本文首发于"数据库架构师"公号,订阅"数据库架构师"公号,一起学习数据库技术)   Redis 作为一款业内使用率最高的内存数据库,其拥有非常高的性能,单节点 ...

  8. Windows 2012 R2上搭建IIS管理用户的隔离模式FTP

    Windows 2012 R2上搭建IIS管理用户的隔离模式FTP Windows自带的FTP现在可以提供基于非OS用户的管理,这提高了安全性.即使FTP用户名和密码泄露,也不会对操作系统造成进一步的 ...

  9. 《Java基础——制表符》

    Java基础--制表符       规则: 若前面输出内容不为8的倍数,则通过空格补全. 不足八位,补全八位.   例一:不足八位: System.out.println("123456&q ...

  10. 解决swiper组件autoplay报错问题

    最近在自定义一个swiper 插件 发现引用之后不定时一直在报错 Uncaught TypeError: Cannot read properties of undefined (reading 'a ...