Подтвердить что ты не робот

Как я могу использовать помощника в разных представлениях

Я использую НПЗ НПЗ на данный момент. Я создал движок и с ним некоторые помощники в app/helpers/admin/. теперь я хотел бы использовать эти помощники в моем интерфейсе (т.е. app/views/myapp/index). но я не могу... неопределенная ошибка метода. что мне нужно сделать, чтобы скопировать все это на app/helpers/? помощник выглядит следующим образом

module Admin
    module myHelper
        def somefunc
        end
    end
end

можно ли использовать somefunc вне модуля Admin?

4b9b3361

Ответ 1

В application_helper.rb:

module ApplicationHelper
  include Admin::MyHelper
end

Это импортирует эти вспомогательные методы в ApplicationHelper, тем самым делая их доступными в ваших представлениях. Вы могли бы сделать это в любом из ваших помощников.

Ответ 2

"Rails way" для включения хелпера из нестандартного пути в представление - использовать метод .helper внутри вашего контроллера.

class MyController < ApplicationController
    helper Admin::MyHelper
    ...
end

http://apidock.com/rails/AbstractController/Helpers/ClassMethods/helper

Ответ 3

Вы можете попытаться использовать полное описание объекта, например Admin::myHelper::somefunc, для вызова somefunc извне модуля Admin.