monkeypatching相关内容

Monkey patching Devise(或任何 Rails gem)

我在我的 Rails 项目中使用 Devise 身份验证 gem,我想更改密钥它在闪光警报中使用.(设计使用 :notice 和 :alert 闪存键,但我想将它们更改为 :success 和 :error 以便我可以显示漂亮的绿色/红色框 引导程序.) 所以我希望能够以某种方式覆盖 DeviseController. 这是新方法: def set_flash_message(key ..
发布时间:2022-01-18 17:49:01 其他开发

猴子补丁 XMLHTTPRequest.onreadystatechange

猴子如何修补 XMLHTTPRequest 的 onreadystatechange 函数.我正在尝试添加一个函数,当从页面发出的每个 ajax 请求都返回时将调用该函数. 我知道这听起来很糟糕,但用例却很奇特.我想将某个 SDK 与控制台 (jqconsole) 一起使用,但在控制台中显示 ajax 调用的状态和结果,而无需修改外部 SDK. 我查看了 这篇文章,其中包含大量信息,但 ..
发布时间:2022-01-15 21:42:53 前端开发

如何修改另一个函数接收到的 XMLHttpRequest 响应文本?

我正在尝试修改我无法修改的函数接收到的 responseText.此函数创建一个我可以附加到的 XMLHttpRequest,但我无法以一种允许我在原始函数接收到内容之前修改内容的方式“包装"responseText. 这是完整的原始功能: 函数 Mj(a, b, c, d, e) {函数 k() {4 == (m && 'readyState' in m ? m.readyState : ..
发布时间:2022-01-15 21:19:00 前端开发

如何模拟一个装饰函数

出于测试原因,我需要能够模拟在其他地方使用的装饰的内部/原始功能: 在 mydecorator.py 中: def my_decorator(f):def Wrapped_f():打印“装饰"F()返回包裹的_f@my_decoratordef function_to_be_mocked():打印'原始'def function_to_be_mocked_undecorated():打印' ..
发布时间:2022-01-08 21:59:45 Python

如何在 Python 的单元测试场景中模拟 HTTP 请求

我想为所有与 HTTP 相关的测试包括一个 Web 服务器.它不需要非常复杂.我宁愿不依赖于在线.所以我可以测试我的程序的一些选项. 启动服务器 使用适当的 mime 类型、响应代码等创建一些资源 (URI). 运行测试(最好不必为每个测试启动服务器) 关闭服务器. 有关此代码的任何提示都会有所帮助.我用 BaseHTTPServer 尝试了一些东西,但还没有成功.nosetes ..
发布时间:2022-01-08 21:45:40 Python

Monkey 修补设计(或任何 Rails gem)

我在 Rails 项目中使用了 Devise 身份验证 gem,我想更改密钥它用于闪光警报.(设计使用 :notice 和 :alert flash 键,但我想将它们更改为 :success 和 :error 以便我可以使用 引导程序.) 所以我希望能够以某种方式覆盖 设计控制器. 这是新方法: def set_flash_message(key, kind, options = { ..
发布时间:2022-01-07 16:29:51 其他开发

Django 模板中的正确缩进(没有猴子补丁)?

我想为我的独立应用程序生成由 Django 模板系统预处理的人类可读的 HTML 和 CSS 代码(正确缩进). 我修改了 django.template.base 模块中 NodeList 类的渲染方法.我的代码似乎工作正常,但我使用猴子补丁来替换旧的渲染方法. 在这种情况下,有没有更优雅的方式不使用猴子补丁?或者,也许猴子补丁是这里最好的方法? 我的代码如下: '''该模块 ..
发布时间:2022-01-02 20:59:10 其他开发

猴子修补 Django 表单类?

给定一个表单类(在你巨大的 Django 应用程序深处). class ContactForm(forms.Form):姓名 = ...姓氏 = ... 并且考虑到您想在不扩展或修改表单类本身的情况下向此表单添加另一个字段,为什么以下方法不起作用? ContactForm.another_field = forms.CharField(...) (我的第一个猜测是 Django 使用的元类 ..
发布时间:2022-01-01 13:18:06 Python

将 Google Analytics cookie 转换为本地/会话存储

更新http://jsfiddle.net/musicisair/rsKtp/embedded/result/> Google Analytics 设置了 4 个 cookie,这些 cookie 将与所有请求一起发送到该域(并抵消其子域).据我所知,没有服务器实际直接使用它们;它们仅以 __utm.gif 作为查询参数发送. 现在,显然 Google Analytics 读取、写入它们的 ..

如何给 Django 打补丁?

我看到了这篇关于猴子补丁 Django 的帖子: from django.contrib.auth.models 导入用户User.add_to_class('openid', models.CharField(max_length=250,blank=True))def get_user_name(self):如果 self.first_name 或 self.last_name:返回 sel ..
发布时间:2021-12-19 11:07:32 Python

delphi中的补丁例程调用

我想修补一个例行调用,以便能够通过一些修改自己处理它.我正在编写一个资源加载器.我想修补 Delphi 的 LoadResourceModule 和InitInheritedComponent 例程和我的一样.我已经检查了 MadExcept.pas 单元中的 PatchAPI 调用,但无法弄清楚我是否可以在我的项目中使用它. 我想要类似的东西 我的 exe 在运行时调用 -> Loa ..
发布时间:2021-12-13 22:53:10 其他开发

如何在自定义 Object.prototype.xxx 函数中获取对象本身?

Object.prototype.getB = function() {//如何获取当前值a返回 a.b;};const a = {b: 'c'};a.getB(); 如您所见,我想为所有 Object 值制作一个函数.我需要在这个函数中获取对象值然后做一些事情. 解决方案 Monkey Patching 你想做的是猴子补丁 — 你改变一个内置原型.有很多错误的方法可以做到,但我将 ..
发布时间:2021-12-11 19:48:05 前端开发

如何在 Perl 中修补实例方法?

我正在尝试修补 (duck-punch :-) LWP::UserAgent 实例,如下所示: sub _user_agent_get_basic_credentials_patch {返回($用户名,$密码);}我的 $agent = LWP::UserAgent->new();$agent->get_basic_credentials = _user_agent_get_basic_cred ..
发布时间:2021-12-10 18:58:31 其他开发

猴子在 Python 中的另一个模块中修补类

我正在使用其他人编写的模块.我想修补模块中定义的类的 __init__ 方法.我发现的展示如何执行此操作的示例都假设我会自己调用该类(例如 Monkey-patch Python 类).然而,这种情况并非如此.在我的情况下,该类是在另一个模块的函数中初始化的.请参阅下面的(大大简化的)示例: thirdpartymodule_a.py class SomeClass(object):def ..
发布时间:2021-12-09 18:45:35 Python

我可以在包装函数之前修补 Python 装饰器吗?

我有一个带有装饰器的函数,我正在尝试借助 Python 进行测试 模拟图书馆.我想使用 mock.patch 用一个只调用函数的模拟“绕过"装饰器替换真正的装饰器. 我想不通的是如何在真正的装饰器包装函数之前应用补丁.我在补丁目标上尝试了一些不同的变体,并重新排序补丁和导入语句,但没有成功.有什么想法吗? 解决方案 装饰器在函数定义时应用.对于大多数功能,这是加载模块的时间.(在其他 ..
发布时间:2021-12-09 18:40:02 Python

是否可以替换(monkeypatch)PHP 函数?

您可以在 Python 中执行此操作,但在 PHP 中可以吗? >>>def a(): 打印 1...>>>def a(): 打印 2...>>>一种()2 例如: 致命错误:无法在第 1 行的/tmp/- 中重新声明 var_dump() 解决方案 这有点 晚了,但我只想指出,从 PHP 5.3 开始,实际上可以覆盖内部函数不使用 PHP 扩展. 诀窍是您可以在命名空间内重新 ..
发布时间:2021-12-07 23:18:24 PHP

共轭转置运算符“.H"在 numpy

在 numpy 中使用 .T 属性来获取 ndarray 的转置版本非常方便.但是,没有类似的方法来获得共轭转置.Numpy 的矩阵类有 .H 运算符,但没有 ndarray.因为我喜欢可读的代码,而且因为我懒得总是写 .conj().T,我希望 .H 属性总是对我可用.如何添加此功能?是否可以添加它,以便每次导入 numpy 时都可以无脑地使用它? (关于 .I 逆运算符可以问类似的问题. ..
发布时间:2021-11-18 04:55:25 Python