ruby on rails - button_to - método indefinido ''link_to''
rails link_to params (3)
Esto se debe a que los urlhelpers de ActionView solo están disponibles para las vistas, no en su directorio lib.
El método link_to se encuentra en el módulo ActionView :: Helpers :: UrlHelper, además de
así que prueba esto.
class Facet include ActionView::Helpers::UrlHelper ... end
Estoy escribiendo un módulo de biblioteca ruby-on-rails:
module Facets
class Facet
attr_accessor :name, :display_name, :category, :group, :special
...
URI = {:controller => ''wiki'', :action => ''plants''}
SEARCH = {:status => WikiLink::CURRENT}
#Parameters is an hash of {:field => "1"} values
def render_for_search(parameters)
result = link_to(display_name, URI.merge(parameters).merge({name => "1"}))
count = WikiPlant.count(:conditions => (SEARCH.merge(parameters.merge({name => "1"}))))
result << "(#{count})"
end
end
...
end
cuando llamo render_for_search me sale el error
undefined method ''link_to''
He intentado exigir url_helper directamente, pero no puedo averiguar qué está mal.
Prueba esto:
ActionController::Base.helpers.link_to
Simplemente incluir al ayudante no te lleva mucho más lejos. Los ayudantes asumen que están en el contexto de una solicitud, para que puedan leer el nombre de dominio y así sucesivamente.
Hazlo al revés; incluye tus módulos en la aplicación de ayuda, o algo así.
# lib/my_custom_helper.rb
module MyCustomHelper
def do_stuff
# use link_to and so on
end
end
# app/helpers/application_helper.rb
module ApplicationHelper
include MyCustomHelper
end