Я реализую шаблон стратегии в Rails, где у меня есть такие модели, как пользователь, элемент, категория, и мне нужно рекомендовать элементы для пользователей в зависимости от различных алгоритмов (стратегий), которые пользователь выбирает в поле зрения.
У меня есть класс рекомендаций, который имеет интерфейс рекомендации (user_id, strategy) и возвращает массив item_id. Рекомендуемая стратегия будет определена во время выполнения в зависимости от варианта, который пользователь выберет в представлении. Я поместил рекомендуемый интерфейс в каталог / lib, а стратегии - в каталог / lib / strategy.
Я хочу убедиться, поместил ли я файлы в соответствующие каталоги или мне нужно разместить рекомендуемый класс и все стратегии в моделях или где-либо еще. Я действительно в замешательстве.