首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >有没有可能用猴子修补Django的反面?

有没有可能用猴子修补Django的反面?
EN

Stack Overflow用户
提问于 2018-01-19 21:57:28
回答 2查看 705关注 0票数 2

我们的一些urls包含#。它们用于反向查找,使用reverse{% url模板标记(在内部使用reverse )。Django 1.8过去不管它,1.11现在把它编码成%23

有没有可能把一个猴子补丁包装器放在某个地方,让它无处不在地使用呢?下面是我的包装器:

代码语言:javascript
运行
AI代码解释
复制
def patch_reverse(func):
    def inner(*args, **kwargs):
        print "inner reverse"
        url = func(*args, **kwargs)
        return url.replace("%23", "#")

    return inner


from django.urls import base
base.reverse = patch_reverse(base.reverse)

print语句是为了让我知道它是否真的在运行。

我试着把它放在设置中,第一个安装的应用的__init__,以及第一个安装的应用的urls中。毫无办法。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-02-12 22:35:57

这是可行的。在您的settings.py或等效设置模块中:

代码语言:javascript
运行
AI代码解释
复制
from django import urls
from django.core import urlresolvers

_django_reverse = urlresolvers.reverse


def _reverse(*args, **kwargs):
    result = _django_reverse(*args, **kwargs)
    # Do whatever you want to do to reverse here
    return result.replace("%23", "#")


urlresolvers.reverse = _reverse
urls.reverse = _reverse
票数 0
EN

Stack Overflow用户

发布于 2018-01-19 22:04:53

在您修补reverse时,原始函数可能已经导入到django.urls (通常从其中导入)和django.template.defaulttags ( {% url %}标记使用它)中。尝试在这些模块中对其进行修补:

代码语言:javascript
运行
AI代码解释
复制
import django.urls
django.urls.reverse = patch_reverse(django.urls.reverse)

import django.template.defaulttags
django.template.defaulttags = patch_reverse(django.template.defaulttags)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48350131

复制
相关文章
「重启程序」的正面和反面
「重启程序」对我来讲,太熟悉了不过了,我很纠结,因为它能帮我解决问题,但出于程序员对于程序健壮的强迫症,我又本能的抗拒。
勇哥java实战
2023/03/21
4370
「重启程序」的正面和反面
服务化反面案例
大概背景是这样的,公司有大几十部分,员工大概有1W人,因为每个部门都要用到权限,因此准备做一个权限的服务,封装权限的相关功能。
心平气和
2020/09/11
7830
猴子摘香蕉_猴子香蕉游戏下载
房内有一个猴子,一个箱子,天花板挂了一串香蕉,其位置如图所示。猴子为了拿到香蕉,它必须把箱子搬到香蕉下面,然后再爬到箱子上。请定义必要的谓词,列出问题的初始化状态(即下图所示状态),目标状态(猴子拿到了香蕉,站在箱子上,箱子位于位置b)
全栈程序员站长
2022/11/09
2800
猴子摘香蕉_猴子香蕉游戏下载
把 Django 网站做成能用 pip 安装的软件包
之前用 Django 写了一个 WEB 项目,最近有人想拿它测试下,看能不能满足需求。一看部署文档就打算放弃。主要是一个正儿八经的 Django 网站要想拉起来依赖项还是比较多的,比如 WEB 服务器 nginx 、应用服务器 wsgi 、数据库服务器 MySQL (可选) ...
初代庄主
2022/12/19
6400
把 Django 网站做成能用 pip 安装的软件包
2429: [HAOI2006]聪明的猴子
2429: [HAOI2006]聪明的猴子 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 448  Solved: 309 [Submit][Status][Discuss] Description 在一个热带雨林中生存着一群猴子,它们以树上的果子为生。昨天下了一场大雨,现在雨过天晴,但整个雨林的地表还是被大水淹没着,部分植物的树冠露在水面上。猴子不会游泳,但跳跃能力比较强,它们仍然可以在露出水面的不同树冠上来回穿梭,以找到喜欢吃的果实。 现在,在这个地
HansBug
2018/04/11
5860
猴子吃桃
public class 猴子吃桃 { //先在纸上写出函数表达式,再用代码表示出来 public static void main(String[] args) { // TODO Auto-generated method stub //逆向思维,假设到时第二天总共有sum2,倒数第三天桃总数为sum3,那么他们的函数表达式为sum3/2-1=sum2 int sum=1; for(int i=0;i<=9;i++){ sum=(1+sum)*2; } System.out.println(“桃总共有:”+sum); }
全栈程序员站长
2022/08/09
1540
微服务-捣乱的猴子
在微服务的架构中有这样一个词,叫Chaos Monkey。翻译过来就是捣乱的猴子。这个概念最早是被在Taleb的书中提到。Antifragile。抵抗力里边的Random House。 如果说脆弱性在计算机世界指的是当受到高并发等其他压力后系统就会变得越来越脆弱甚至崩溃。这里说的这个脆弱性就是fragility这个单词。那么这个脆弱性的反义词是什么呢? 相信很多人会回答说那就是当受到压力时系统依然不脆弱。相信这是我们很多人的第一反应。 然而上面说到的那位Taleb先生却提出了一种全新的观点,就是脆弱性也就
ImportSource
2018/04/03
1.3K0
微服务-捣乱的猴子
科学家研发可自行修补裂缝混凝土,真菌是关键 | 黑科技
据报道,为了延长混凝土的使用年限,减少裂缝出现,科学家近日在混凝土里添加真菌,这些真菌可以修补裂缝。 研究人员来自纽约州立宾汉顿大学和纽泽西州立罗格斯大学,他们使用的真菌,被称为里氏木霉,将孢子混入混凝土中,顽强的真菌可以保持休眠数月或数年,其间几乎不消耗任何营养,当混凝土龟裂时,孢子遇到了空气和水中,就会复苏活跃。 真菌可以在混凝土内生长,经代谢作用产生副产品“碳酸钙”。碳酸钙(又可称为石灰石)正是水泥与混凝土的主成份,虽然它并不完全是混凝土(还缺了黏土),但确实可以填补裂缝,阻止混凝土进一步的裂解,这
镁客网
2018/05/29
3770
大数据和云计算硬币的正反面
大数据和云计算硬币的正反面 “大数据也需要云计算这个平台,这是一个硬币的正反面。”阿里云总裁王文彬(花名:菲青)与媒体交流时表示。这几年IT行业发生了翻天覆地的变化,直到现在大家依然在谈论云计算。这云概念出现当初,业内不断传出质疑的声音,随着各大云服务厂商的努力,现在各行各业都已经开始接受了云计算服务。2014年7月,阿里云ODPS项目正式对外开放。 伴随着互联网与移动互联网的相关技术不断成熟,云计算开始被市场接受,海量数据大潮来袭,厂商和企业纷纷看到了大数据的前景,我们现在已经生活在一个数据的时代。 大数
静一
2018/03/19
1.7K0
帕累托分析的反面-尾巴分析
之前采总写了篇文章,对帕累托分析进行了优化,对帕累托法则不熟悉的读者,此处再普及下:
wujunmin
2021/09/07
8090
帕累托分析的反面-尾巴分析
人工智能实验猴子摘香蕉_猴子拿香蕉实验感悟
猴子定义了4个状态 空手移动,推箱子,爬箱子,摘香蕉 用 (w,x,y,z)描述
全栈程序员站长
2022/11/09
3260
人工智能实验猴子摘香蕉_猴子拿香蕉实验感悟
半听话的“猴子”压力测试
本章主要介绍4399AT的公用脚本配合monkey进行压力测试,可以让猴子测试,不在那么随机操作,可以有顺序的帮我们解决登录,进入APP的一些相关操作,提高测试效率和配合持续构建编译自动化测试使用~
厦门-安仔
2019/07/30
5190
猴子吃桃问题
有一堆桃子不知数目,猴子第一天吃掉一半,又多吃了一个,第二天照此方法,吃掉剩下桃子的一半又多一个,天天如此,到第m天早上,猴子发现只剩一只桃子了,问这堆桃子原来有多少个? (m<29)
书童小二
2018/09/03
7140
内存修补 AMSI 绕过
反恶意软件扫描接口是一组 Windows API,允许任何应用程序与防病毒产品集成(假设该产品充当 AMSI 提供者)。与许多第三方 AV 解决方案一样,Windows Defender 自然地充当 AMSI 提供商。
Khan安全团队
2021/12/29
7560
【算法】猴子大王
一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去…,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫做大
苦咖啡
2018/04/28
5480
猴子摘桃
#include <iostream> using namespace std; int f(int n){ int num; if(n == 4){ return 1; } else{ num = (f(n+1)+1)*2; } return num; } int main() { int num = f(1); cout<<num; return 0; }
且陶陶
2023/04/12
1910
猴子摘桃
别让猴子跳回背上
(5)独立行动,例行性报告(最高层级)。 (4)行动,但需立即请示(意味着报告频率超过例行程度)。 (3)提出建议,按照裁断的结果行动。 (2)请示要做什么。 (1)等待指示(最低层级)。
奋飛
2021/08/31
4160
人工智能猴子摘香蕉问题的逻辑表示_猴子拿香蕉实验感悟
一个房间里,天花板上挂有一串香蕉,有一只猴子可在房间里任意活动(到处走动,推移箱子,攀登箱子等)。设房间里还有一只可被猴子移动的箱子,且猴子登上箱子时才能摘到香蕉,问猴子在某一状态下(设猴子位置为A,箱子位置为B,香蕉位置在C),如何行动可摘取到香蕉。
全栈程序员站长
2022/11/09
4910
009GreaseMonkey(油猴子)的使用
作者是Anthony Lieuallen, Aaron Boodman, Johan Sundström
上善若水.夏
2018/09/28
8210
点击加载更多

相似问题

猴子修补django模型字段

11

猴子修补Django表格类?

12

django中的猴子修补请求

11

定制/扩展/猴子修补Django Auth后端

13

猴子修补ActiveResource::Errors

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文