Rails: как мне использовать помощников в отдельном классе в lib - PullRequest
5 голосов
/ 22 мая 2009

Мне довелось написать один файл в папке lib, и я хочу использовать TextHelper в этом файле. Как я могу сделать Texthelper доступным?

Предложения приветствуются, Спасибо,

Ответы [ 2 ]

6 голосов
/ 23 мая 2009

На самом деле это совсем не сложно. Вы можете просто включить модуль TextHelper из вашего класса.

class MyLib
  include ActionView::Helpers::TextHelper

  def five_things(x)
    pluralize 5, x
  end
end

>> MyLib.new.five_things "dog"
=> "5 dogs"

Это класс, который я определил в lib, и вывод из сеанса script/console, чтобы убедиться, что все это играет хорошо.

1 голос
/ 19 декабря 2017

Для тех, кому методы self не наследуют функции от хелпера, это будет работать:

class MyLib

  class << self

    include Path::To::YourHelper

    def test_func(x)
      method_in_helper 5, x
    end

  end

end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...