Rails: использование тегов формы внутри lib - PullRequest
0 голосов
/ 17 марта 2010

Итак, у меня есть этот код в моей папке lib /:

class GlobalConfig::SetHelper
  def self.yes_no_input(configuration)
    value = configuration.value
    name = configuration.name
    "#{radio_button_tag name, true, (value == true), {:id => "#{name}_yes"}} #{label_tag "#{name}_yes", 'yes'}
     #{radio_button_tag name, false, (value.blank? or value == false), {:id => "#{name}_no"}} #{label_tag "#{name}_no", 'no'}"
  end
end

Но он вернулся: неопределенный метод `radio_button_tag 'для GlobalConfig :: SetHelper: Class когда я запускаю код.

Как мне это исправить. Кто-нибудь? * * 1006

Спасибо

Ответы [ 2 ]

3 голосов
/ 17 марта 2010
  1. Почему вы положили это в lib? app/helpers - это стандартное место для размещения вспомогательных методов, подобных этому.
  2. Использование вспомогательных методов в качестве методов класса вспомогательного класса не является подходящим способом. Вы должны сделать это методом экземпляра. Затем вставьте этот код в свой контроллер:

    helper GlobalConfig::SetHelper

    и у вас будет доступ к его методам внутри ваших представлений. И стандартные вспомогательные методы, такие как radio_button_tag, также будут работать сразу.

0 голосов
/ 17 марта 2010

Вы должны включить в свой помощник Помощник с помощью этого метода:


class GlobalConfig::SetHelper
  include ActionView::Helpers::FormTagHelper
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...