Tag: monkeypatching

Dynamisch ändern von Verhalten zur Laufzeit durch Austausch-Programm Elemente mit neuen Programm-Elementen

Wie Monkey Patch in Ruby on Rails?

Anzahl der Antworten 4 Antworten
Ermöglicht die Verwendung einer realen Welt-Beispiel. Möchte ich monkey patch WillPaginate::LinkRenderer.to_html Methode. Bisher habe ich versucht: Erstellt eine Datei in den Ordner: lib/Affen/will_paginate_nohtml.rb Hinzugefügt in config/environments.rb: require 'Affen/will_paginate_nohtml' am Ende der Datei Innen, die Datei, das war

Wie monkeypatch Ruby, richtig?

Anzahl der Antworten 1 Antworten
Ich versuche, monkeypatch eine Zeile in der Netto-Klasse in der standard-Bibliothek. Ich habe eine Datei namens patches.rb in das " lib " - Ordner des Projekts und fügte hinzu, diese module Net class HTTP < Protocol module

Kann ich eigene Methoden/Attribute eingebauten Python-Typen?

Anzahl der Antworten 4 Antworten
Beispielsweise sagen, ich möchte hinzufügen helloWorld() Methode, um Python-dict-Typ. Kann ich dies tun? JavaScript hat ein Prototyp-Objekt, das auf diese Weise verhält. Vielleicht ist es schlechtes design und sollte ich eine Unterklasse der dict-Objekt, aber dann funktioniert

Wie Sie auf Eigenschaft hinzufügen, um eine Klasse dynamisch?

Anzahl der Antworten 19 Antworten
Das Ziel ist, erstellen Sie ein mock-Klasse verhält sich wie ein db resultset. So zum Beispiel, wenn eine Datenbank-Abfrage zurück, mit einem dict Ausdruck {'ab':100, 'cd':200} würde, dann würde ich gerne sehen: >>> dummy.ab 100 Zuerst dachte

In Schienen, wie Sie zum hinzufügen einer neuen Methode der String-Klasse?

Anzahl der Antworten 3 Antworten
Ich möchte einen index erstellen, für verschiedene Objekte in meinem Rails Projekt und würde gerne eine 'count_occurences' Methode, die ich anrufen kann auf String-Objekte. Sah ich, ich könnte etwas tun, wie class String def self.count_occurences do_something_here end

Conjugate transpose-operator “.H" in numpy

Anzahl der Antworten 2 Antworten
Ist es sehr bequem in numpy zu verwenden, die .T Attribut um eine transponierte version einer ndarray. Es gibt jedoch keine ähnlichen Weg, um die konjugierte transponieren. Numpy matrix-Klasse hat die .H Betreiber, aber nicht ndarray. Weil

Wie kann ich ändern, das XMLHttpRequest-responsetext erhalten, indem Sie eine andere Funktion?

Anzahl der Antworten 6 Antworten
Ich versuche mich zu ändern responseText erhielt durch eine Funktion, die ich nicht ändern kann. Diese Funktion erstellt ein XMLHttpRequest-Objekt, die ich Anhängen können, aber ich habe es nicht "wrap" responseText in einer Weise, die mir erlaubt,

Monkey-patch-Python-Klasse

Anzahl der Antworten 4 Antworten
Ich habe eine Klasse, die sich in einem separaten Modul, was ich nicht ändern kann. from module import MyClass class ReplaceClass(object) ... MyClass = ReplaceClass Diese nicht ändern MyClass irgendwo anders als in dieser Datei. Allerdings, wenn

Monkey-patching eine Klasse in einem anderen Modul in Python

Anzahl der Antworten 6 Antworten
Arbeite ich mit einem Modul von einer anderen Person geschrieben. Ich würd gerne monkey patch die __init__ Methode einer Klasse im Modul definiert. Die Beispiele, die ich gefunden habe, zeigen, wie Sie dies tun, haben alle davon

Was ist Affenflicken?

Anzahl der Antworten 7 Antworten
Ich versuche zu verstehen, was monkey-patching oder ein Affe patch? Ist, dass so etwas wie Methoden/Operatoren überladen oder delegieren? Muss es etwas gemeinsames mit diesen Dingen? InformationsquelleAutor der Frage Sergei Basharov | 2011-04-11

Wenn Sie eine Methode mit Affen patchen, können Sie die überschriebene Methode von der neuen Implementierung aufrufen?

Anzahl der Antworten 3 Antworten
Sagen, ich bin monkey-patching eine Methode in einer Klasse, wie könnte ich nennen, die überschriebene Methode aus der übergeordneten Methode? I. e. Etwas, das ein bisschen wie super E. g. class Foo def bar() "Hello" end end

Was bedeutet Affe-Patchen genau in Ruby?

Anzahl der Antworten 8 Antworten
Laut Wikipedia, ein monkey patch ist: einer Weise zu erweitern oder zu ändern, die Laufzeit code der dynamischen Sprachen [...] ohne änderung der original-Quelle code. Folgende Aussage aus dem gleichen Eintrag verwirrt mich: In Ruby, der Begriff

Fügen Sie in groovy dynamisch eine Eigenschaft oder Methode zu einem Objekt hinzu

Anzahl der Antworten 1 Antworten
Ist es möglich, fügen Sie eine Eigenschaft oder eine Methode, um ein Objekt dynamisch in Groovy? Dies ist, was ich bisher versucht habe: class Greet { def name Greet(who) { name = who[0].toUpperCase() + [1..-1] } def

Hinzufügen einer Methode zu einer vorhandenen Objektinstanz

Anzahl der Antworten 17 Antworten
Habe ich gelesen, dass es möglich ist, eine Methode zum hinzufügen eines vorhandenen Objekts (d.h., nicht in der definition der Klasse) in Python. Ich verstehen, dass es nicht immer gut, dies zu tun. Aber wie könnte man

Wie man eine HTTP-Anfrage in einem Unit-Test-Szenario in Python verspottet

Anzahl der Antworten 1 Antworten
Ich würde gerne einen Web-server für alle meine test bezogen auf HTTP. Es braucht nicht sehr anspruchsvoll. Ich würde es vorziehen, nicht zu abhängig von online. So konnte ich testen, einige Optionen in meinem Programm. Starten Sie

Können Sie Patch-Methoden auf Kerntypen in Python anwenden?

Anzahl der Antworten 14 Antworten
Ruby hinzufügen können Methoden, um die Number-Klasse und andere core-Typen, die zu erhalten Ergebnisse wie diese: 1.should_equal(1) Aber es scheint, dass Python nicht. Ist das wahr? Und wenn ja, warum? Hat es etwas mit der Tatsache zu

Affe flickt Devise (oder irgendein Rails-Juwel)

Anzahl der Antworten 7 Antworten
Ich bin mit dem Ausdenken Authentifizierung gem in meinem Rails Projekt, und ich möchte die Tasten ändern, dass es in flash-Warnungen. (Ausarbeitung verwendet :Hinweis und :alert-flash-Schlüssel, aber das will ich ändern Sie Sie :Erfolg und :Fehler, so

Ist "Affenflicken" wirklich so schlimm?

Anzahl der Antworten 5 Antworten
Einige Sprachen wie Ruby und JavaScript-offene Klassen, die es erlauben das ändern von Schnittstellen, der auch Kern-Klassen, wie zahlen, strings, arrays, etc. Offensichtlich tun, so könnte verwirren andere, die vertraut sind mit der API, aber es gibt

Sellerie auf Prozesse anwenden und gleichzeitig Aufgaben erledigen

Anzahl der Antworten 4 Antworten
Würde ich gerne Sellerie als eine Warteschlange für meine Aufgaben, so dass meine web-app könnte enqueue-eine Aufgabe, in der eine Antwort zurück und der task verarbeitet werden, inzwischen /someday /... ich Baue eine Art API, also ich

Kann ich einen Python-Dekorator patchen, bevor er eine Funktion umschließt?

Anzahl der Antworten 7 Antworten
Habe ich eine Funktion mit einem decorator, dass ich versuche, test mit Hilfe des Python - Mock Bibliothek. Ich möchte mock verwenden.patch zu ersetzen, die real decorator mit einem mock 'bypass' decorator, die nur die Funktion aufruft.

Wie packt ein Affe eine Funktion in Python?

Anzahl der Antworten 5 Antworten
Ich habe Probleme beim ersetzen einer Funktion aus einem anderen Modul mit einer anderen Funktion, und es macht mich verrückt. Sagen wir, ich habe ein Modul bar.py das sieht dann so aus: from a_package.baz import do_something_expensive def

Erweitern der eingebauten Klassen in Python

Anzahl der Antworten 3 Antworten
Wie verlängere ich eine vordefinierte Klasse in python? Ich möchte hinzufügen, eine Methode der str-Klasse. Ich habe getan, einige suchen aber alles, was ich zu finden bin ist, ältere Beiträge, ich hoffe jemand kennt der etwas neuere.

Wie fügt man dynamisch eine Eigenschaft zu einer Klasse hinzu?

Anzahl der Antworten 17 Antworten
Das Ziel ist, erstellen Sie ein mock-Klasse verhält sich wie ein db resultset. So zum Beispiel, wenn eine Datenbank-Abfrage zurück, mit einem dict Ausdruck {'ab':100, 'cd':200} würde, dann würde ich gerne sehen: >>> dummy.ab 100 Zuerst dachte

Wie fügt man in Rails eine neue Methode zur String-Klasse hinzu?

Anzahl der Antworten 3 Antworten
Ich möchte einen index erstellen, für verschiedene Objekte in meinem Rails Projekt und würde gerne eine 'count_occurences' Methode, die ich anrufen kann auf String-Objekte. Sah ich, ich könnte etwas tun, wie class String def self.count_occurences do_something_here end