2010-07-06 12 views
9

Ho trovato molte informazioni sull'aggiunta dei metodi di aiuto per i moduli (vedere una delle mie altre domande), ma non riesco a trovare nulla sull'aggiunta dei metodi di supporto come se fossero definiti in application_helper.rb.Aggiunta di un metodo di supporto con una gemma

Ho provato a copiare application_helper.rb da un'app per rails nella gemma ma non ha funzionato.

Ho anche provato:

class ActionView::Helpers 

..ma che produce un errore.

risposta

24

Creare un modulo da qualche parte per i vostri metodi di supporto:

module MyHelper 
    def mymethod 
    end 
end 

mescolare in ActionView :: Base (come ad esempio in init.rb o lib/your_lib_file.rb)

ActionView::Base.send :include, MyHelper 
+1

Secondo commento @BrandonTilley [qui] (http://stackoverflow.com/questions/5791211/how-do-i-extract-rails-view-helpers-into-a-gem#comment-42572499) dovresti usare 'ActiveSupport.on_load (: action_view) {include MyGem :: ViewHelpers} 'invece di' send: include' da ActiveSupport 3.0.0. Maggiori dettagli nel thread SO collegato. – plunntic

Problemi correlati