Я пытаюсь использовать службы в рельсах, чтобы уменьшить размер контроллера.У меня есть модель событий с полями user_id среди других.Я бы хотел выбрать трех лучших пользователей, которые организовали больше всего мероприятий.Это первый раз, когда я использую Службы, и мне сказали, что настоятельно рекомендуется поддерживать модель как в скине, так и в контроллере.
Мой billboard_service.rb:
class BillboardService
attr_reader :user, :params, :event
def most_event_organized
Event.group(:user_id).order('count_all desc').count.first(3)
end
def event_find(user_id)
Event.where(user_id: user_id).includes(:user_id)
end
end
Мой взгляд (очень ранняя стадия):
<%= @bill_board.most_event_organized %>
И мой контроллер построен на эшафот.Я получаю следующую ошибку:
ActionView::Template::Error (undefined method `most_event_organized' for nil:NilClass):
1: <div class="line_separation_equilibree"></div>
2: <h3> league </h3>
3: <%= @bill_board.most_event_organized %>
4: <div class="col-lg-4">
5:
6: <br>
Кто-нибудь знает, как это должно работать, пожалуйста?Спасибо