Utilisons un exemple du monde réel.Comment faire un patch de singe dans Ruby on Rails?
Je veux patch de singe méthode WillPaginate :: LinkRenderer.to_html.
Jusqu'à présent, j'ai essayé:
- créé un fichier dans le dossier: lib/singes/will_paginate_nohtml.rb
- Ajouté dans config/environments.rb: require 'singes/will_paginate_nohtml' à la fin de le fichier
- Dans ce fichier, ce fut mon code:
e
module Monkeys::WillPaginateNohtml
def to_html
debugger
super
end
end
WillPaginate::LinkRenderer.send(:include, Monkeys::WillPaginateNohtml)
Mais d'une manière ou d'une autre, le débogueur n'est pas transmis. On dirait que le correctif a échoué.
Toute aide serait appréciée, merci!
+ 1 parce qu'il n'y a pas de "super" quand vous patchez, bien que je préfère la réponse de @vise pour personnaliser le rendu (et il y aura un "super"). – hurikhan77
J'ai déjà manqué alias_method_chain, et c'est parti depuis environ un mois –
@MattBriggs De quoi parlez-vous? Il est toujours là depuis 4.0.2: http://apidock.com/rails/Module/alias_method_chain – Chloe