Как добавить префикс и вызвать вспомогательный метод в Rails 5? - PullRequest
0 голосов
/ 18 ноября 2018

В моем приложении RoR 5.2 я часто использую помощников для получения списка параметров, которые можно использовать в форме:

<%= f.collection_select :status_id, statuses_list, :id, :name %>

где statuses_list - это метод из моих параметров_helper.rb:

# retrieve the list of statuses
  def statuses_list
    list_id = ParametersList.where("code=?", 'LIST_OF_STATUSES').take!
    Parameter.where("parameters_list_id=?  AND ? BETWEEN active_from AND active_to", list_id, Time.now )
  end 

Чтобы сделать это возможным, application_controller.rb содержит следующее:

include SessionsHelper, ParametersHelper, UsersHelper

Читая вокруг, я обнаружил, что вместо включения всех помощников сразу, я мог бы поставить префикс запрошенного метода: helpers.statuses_list или ParametersHelper::statuses_list

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

Я не могу заставить его работать таким образом, и я застрял с методом incude (Может быть потому, что я постепенно обновил Rails 5.0, и эта функция появилась недавно?)

Можете ли вы дать мне знать, если это хорошая практика, и каковы предпосылки, чтобы она работала? Большое спасибо!

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