Разница между указанием вспомогательных методов в файлах помощника и контроллера - PullRequest
0 голосов
/ 21 января 2019

В Ruby on Rails мы можем указать вспомогательный метод в контроллерах, например,

# app/controllers/my_controller.rb

class MyController < ApplicationController
  helper_method :helper_method_name

  ...

  private

  def helper_method_name
    ...
  end
end

и в помощниках, например

# app/helpers/my_helper.rb

class MyHelper
  def helper_method_name
    ...
  end
end

В чем разница (в отношении доступа, использования и т. Д.)?

Ответы [ 2 ]

0 голосов
/ 21 января 2019

Как сказал Рэй.Вы можете использовать helper_method только тогда, когда вам действительно нужно использовать его в и контроллерах и помощниках / представлениях.

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

0 голосов
/ 21 января 2019

Метод helper_method заключается в явном совместном использовании некоторых методов, определенных в контроллере, чтобы сделать их доступными для представления.

Используется для любого метода, к которому вам необходим доступ с обоих контроллеров и помощников / представлений (стандартные вспомогательные методы недоступны в контроллерах).

...