Задать вопрос
@IvanN777

Как правильно организовать сортировку в Rails?

Организовал цепочку сортировки default и выделил scope для rating, так-как рейтинг может быть в будущем перенаправлен в отдельную сущность то выделил его в метод класса. Могу ли я выделить сортировку в какой нибудь модуль и с точки зрения грамотного подхода правильно ли я сделал?
default_scope { sorting_rules_default }
scope :rating, -> { order_by_rating }
def self.sorting_rules_default
    sorting_by_rating.order(name: :desc)
end

def self.sorting_by_rating
    order(rating: :desc)
end


Кстати что значит сортировка по lft
  • Вопрос задан
  • 419 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@CapeRatel
Не городите ничего заранее, ничего не оптимизируйте заранее.
Напишите просто скоупы и работайте дальше.
Когда понадобится вынесение десятков/сотен скоупов в отдельную логику, можно использовать паттерн repository(гугл в помощь, также можно посмотреть на hanamirb.org, он тут реализован).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
Менять дефолтный скоуп - плохая идея, кстати
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы