前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Django 中url补充以及模板继承

Django 中url补充以及模板继承

作者头像
coders
发布于 2018-01-04 06:35:07
发布于 2018-01-04 06:35:07
1.2K01
代码可运行
举报
文章被收录于专栏:coder修行路coder修行路
运行总次数:1
代码可运行

Django中的URL补充

默认值

在url写路由关系的时候可以传递默认参数,如下:

url(r'^index/', views.index,{"name":"root"}),

这样在视图函数中,就可以获取这个默认参数name:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def index(request,name):
    print(name)
    return  HttpResponse("%s is OK" %name)
命名空间

通过下面例子理解:

在项目的urls里写入如下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
urlpatterns = [

    url(r'^a/',include("app01.urls",namespace="author"))

]

在app的urls里写入如下代码:(注意高亮部分必须有)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
app_name = "app01"
urlpatterns = [
    url(r'^index/',views.index,name="index")
]

最后在views视图函数中写入如下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from django.urls import reverse

def index(request):
    v = reverse("author:index")
    print(v)
    return  HttpResponse("is ok")

当访问页面

关于获取用户请求信息

我们在视图函数中写的函数中都加了一个request参数,我们可以通过from django.core.handlers.wsgi import WSGIRequest 导入之后通过request.environ查看详细的信息

而request.environ是一个字典我们循环之后打印:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    for k,v in (request.environ).items():
        print(k,v)

则可以看到整个请求头的信息

模板继承

如果自己的网站中每个页面都有上面这个部分,如果我们在每个页面都重复写这段代码就会很麻烦,并且改动起来也需要每个都改动,为了这种需求,模板继承可以解决这个问题

把相同的东西写入到模板中,如果某个部分不同则:

{% block content(这里是自定义名字) %}{% endblock %}

而在要继承模板的代码中首先:

{% extends "tp.html" %}  表示要继承的模板

{% block content(这个名字和在模板中定义的名字保持一致) %}

<h1>用户管理</h1>

{% endblock %}

这样就继承了模板中的内容

具体代码如下:

模板中代码如下tp.html:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>{% block title %}{% endblock %}</title>
    <link rel="stylesheet" href="/static/common.css">
</head>
<body>
    <div class="pg-header">
        我的网站
    </div>
    {% block content %}{% endblock %}
</body>
</html>

tp1.html继承tp.html代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{% extends "tp.html" %}
{% block title %}
    主机管理
{% endblock %}

{% block content %}
<h1>用户管理</h1>
{% endblock %}

tp2.html继承tp.html,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{% extends "tp.html" %}
{% block title %}
    用户管理
{% endblock %}

{% block content %}
<h1>用户管理</h1>
{% endblock %}

这样最后登录tp1和tp2的效果如下:

这样就实现了继承,但是这里有个问题,如果tp1和tp2中自己想写自己单独的css以及js的话,就需要做如下操作:

在head的最下面写如下代码:

{% block css %}{% endblock %}

在body的最下面写如下代码:

{% block js %}{% endblock %}

这样在tp1以及tp2中就可以自定义自己的css

例如在tp1中添加如下代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{% block css %}
    <style>
        body{
            background-color: red;
        }
    </style>

这样再次访问tp1.html的时候效果如下,而访问tp2的时候效果不会发生变化:

include

当有一些小的标签很多页面都需要用到的时候我们可以单独在一个html中将写标签,在tp1中以及tp2中通过include调用

具体如下,新添加一个tag.html,代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<form>
    <input type="text">
    <input type="text">
</form>

在tp1.html中代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{% block content %}
<h1>用户管理</h1>
{% include "tag.html" %}
{% endblock %}

这样最后的效果如下:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017-01-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
[深度应用]·DC竞赛轴承故障检测开源Baseline(基于Keras1D卷积 val_acc:0.99780)
轴承是在机械设备中具有广泛应用的关键部件之一。由于过载,疲劳,磨损,腐蚀等原因,轴承在机器操作过程中容易损坏。事实上,超过50%的旋转机器故障与轴承故障有关。实际上,滚动轴承故障可能导致设备剧烈摇晃,设备停机,停止生产,甚至造成人员伤亡。一般来说,早期的轴承弱故障是复杂的,难以检测。因此,轴承状态的监测和分析非常重要,它可以发现轴承的早期弱故障,防止故障造成损失。 最近,轴承的故障检测和诊断一直备受关注。在所有类型的轴承故障诊断方法中,振动信号分析是最主要和有用的工具之一。 在这次比赛中,我们提供一个真实的轴承振动信号数据集,选手需要使用机器学习技术判断轴承的工作状态。
小宋是呢
2019/06/27
2K0
[深度应用]·DC竞赛轴承故障检测开源Baseline(基于Keras1D卷积 val_acc:0.99780)
实战 | 基于KerasConv1D心电图检测开源教程(附代码)
本实战内容取自笔者参加的首届中国心电智能大赛项目,初赛要求为设计一个自动识别心电图波形算法。笔者使用Keras框架设计了基于Conv1D结构的模型,并且开源了代码作为Baseline。内容包括数据预处理,模型搭建,网络训练,模型应用等,此Baseline采用最简单的一维卷积达到了88%测试准确率。有多支队伍在笔者基线代码基础上调优取得了优异成绩,顺利进入复赛。
AI科技大本营
2019/06/14
2.9K0
[深度应用]·使用一维卷积神经网络处理时间序列数据
许多技术文章都关注于二维卷积神经网络(2D CNN)的使用,特别是在图像识别中的应用。而一维卷积神经网络(1D CNNs)只在一定程度上有所涉及,比如在自然语言处理(NLP)中的应用。目前很少有文章能够提供关于如何构造一维卷积神经网络来解决你可能正面临的一些机器学习问题。本文试图补上这样一个短板。
小宋是呢
2019/06/27
16.1K2
[深度应用]·使用一维卷积神经网络处理时间序列数据
基于深度学习的面部表情识别系统
来源商业新知网,原标题:零起步,数据科学家手把手教你coding表情识别(内附代码)
商业新知
2019/06/14
7.8K0
基于深度学习的面部表情识别系统
用Keras Tensorflow 2.0实现YOLO V1
本文尝试使用Tensorflow 2.0复现论文<You Only Look Once: Unified, Real-Time Object Detection>的效果。
YoungTimes
2022/04/28
1.3K0
用Keras Tensorflow 2.0实现YOLO V1
keras系列︱Sequential与Model模型、keras基本结构功能(一)
中文文档:http://keras-cn.readthedocs.io/en/latest/ 官方文档:https://keras.io/ 文档主要是以keras2.0。
全栈程序员站长
2022/11/03
1.9K0
【keras】一维卷积神经网络做回归「建议收藏」
数据集大小仍然是247*900,不同的是数据集的第247位变成了湿度特征的真实湿度值。
全栈程序员站长
2022/11/09
2.3K0
【keras】一维卷积神经网络做回归「建议收藏」
TensorFlow教程:快速入门深度学习五步法(附Keras实例)
作为一个程序员,我们可以像学习编程一样学习深度学习模型开发。我们以 Keras 为例来说明。我们可以用 5 步 + 4 种基本元素 + 9 种基本层结构,这 5-4-9 模型来总结。
数据派THU
2018/07/30
1.5K0
TensorFlow教程:快速入门深度学习五步法(附Keras实例)
基于1DCNN(一维卷积神经网络)的机械振动故障诊断
机械振动故障诊断最为经典的还是凯斯西储实验室的轴承故障诊断,开学一周了,上次改编鸢尾花分类的代码可用,但是并不准确。开学一周重新改编了别人的一篇代码,亲测好用。不多咧咧直接放上去(基于Tensorflow2.0)(Spyder4 软件上跑的)数据集时本人把凯西轴承实验驱动端内圈损坏尺寸0.14和0.21做的二分类,数据集中0代表的0.14而1代表的0.21具体看下面最后
全栈程序员站长
2022/06/27
7500
基于1DCNN(一维卷积神经网络)的机械振动故障诊断
Keras 学习笔记(三)Keras Sequential 顺序模型
你可以通过将网络层实例的列表传递给 Sequential 的构造器,来创建一个 Sequential 模型:
种花家的奋斗兔
2020/11/12
2.4K0
keras 基础入门整理
在进行自然语言处理之前,需要对文本进行处理。 本文介绍keras提供的预处理包keras.preproceing下的text与序列处理模块sequence模块
学到老
2019/01/25
1.5K0
Deep learning with Python 学习笔记(7)
卷积神经网络能够进行卷积运算,从局部输入图块中提取特征,并能够将表示模块化,同时可以高效地利用数据。这些性质让卷积神经网络在计算机视觉领域表现优异,同样也让它对序列处理特别有效。对于某些序列处理问题,这种一维卷积神经网络的效果可以媲美 RNN,而且计算代价通常要小很多,并且,对于文本分类和时间序列预测等简单任务,小型的一维卷积神经网络可以替代 RNN,而且速度更快
范中豪
2019/09/10
7350
Deep learning with Python 学习笔记(7)
Tensorflow2——卷积神经网络的搭建
***** 以下有关代码全是在jupyter notebook 里面调试完后曾,如果直接复制粘贴到pycharm可能不太行,自己得改改
Albert_xiong
2021/06/21
1.3K0
Tensorflow2——卷积神经网络的搭建
照片解锁手机不能忍?教你用OpenCV做活体检测 | 有代码
名叫Adrian Rosebrock的程序猿,写了份事无巨细的教程,从构建数据集开始,一步步教大家用AI分辨真人和照片,精细到每行代码的用途。
量子位
2019/04/23
1K0
照片解锁手机不能忍?教你用OpenCV做活体检测 | 有代码
keras系列︱Sequential与Model模型、keras基本结构功能(一)
该文章介绍了在深度学习模型中,不同的层对输入进行计算,从而影响模型的性能。文章详细讨论了卷积层、池化层、全连接层和LSTM层的特点和作用,以及如何使用这些层来构建高性能的模型。此外,文章还探讨了如何通过冻结层和重新训练层来提高模型的性能。
悟乙己
2018/01/02
10.3K0
keras系列︱Sequential与Model模型、keras基本结构功能(一)
[深度应用]·首届中国心电智能大赛初赛开源Baseline(基于Keras val_acc: 0.88)
为响应国家健康中国战略,推送健康医疗和大数据的融合发展的政策,由清华大学临床医学院和数据科学研究院,天津市武清区京津高村科技创新园,以及多家重点医院联合主办的首届中国心电智能大赛正式启动。自今日起至2019年3月31日24时,大赛开启全球招募,预计大赛总奖金将高达百万元!目前官方报名网站已上线,欢迎高校、医院、创业团队等有志于中国心电人工智能发展的人员踊跃参加。
小宋是呢
2019/06/27
1.2K0
[深度应用]·首届中国心电智能大赛初赛开源Baseline(基于Keras val_acc: 0.88)
100天搞定机器学习|day40-42 Tensorflow Keras识别猫狗
前文我们用keras的Sequential 模型实现mnist手写数字识别,准确率0.9713。今天我们完成day40-42的课程,实现猫、狗的识别。
统计学家
2019/08/09
7800
100天搞定机器学习|day40-42 Tensorflow Keras识别猫狗
观点 | 用于文本的最牛神经网络架构是什么?
选自GitHub 作者:Nadbor Drozd 机器之心编译 参与:路雪、刘晓坤 用于文本的最牛神经网络架构是什么?数据科学家 Nadbor 在多个文本分类数据集上对大量神经网络架构和 SVM + NB 进行了测试,并展示了测试结果。 去年,我写了一篇关于使用词嵌入如 word2vec 或 GloVe 进行文本分类的文章(http://nadbordrozd.github.io/blog/2016/05/20/text-classification-with-word2vec/)。在我的基准测试中,嵌入的
机器之心
2018/05/09
7090
观点 | 用于文本的最牛神经网络架构是什么?
【tensorflow2.0】训练模型的三种方法
模型的训练主要有内置fit方法、内置tran_on_batch方法、自定义训练循环。
西西嘛呦
2020/08/26
1K0
TextCNN文本分类(keras实现)「建议收藏」
深度学习模型在计算机视觉与语音识别方面取得了卓越的成就,在 NLP 领域也是可以的。将卷积神经网络CNN应用到文本分类任务,利用多个不同size的kernel来提取句子中的关键信息(类似 n-gram 的关键信息),从而能够更好地捕捉局部相关性。
全栈程序员站长
2022/09/13
1.7K0
TextCNN文本分类(keras实现)「建议收藏」
推荐阅读
相关推荐
[深度应用]·DC竞赛轴承故障检测开源Baseline(基于Keras1D卷积 val_acc:0.99780)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验