Я новичок в Ruby on Rails, и мои вопросы касаются дизайна приложения, основанного на Rails 3. В Rails существует множество данных о создании стандартных веб-сайтов (таких как блоги), но мое приложение требует больше, чем просто «писать и читать», и я не уверен, как это реализовать.Ruby on Rails: где я должен хранить модули?
Идея:
- Модель "Маршрут" включает в себя ряд авиакомпаний модулей: "Ryanair", "Easyjet" и т.д.
- Метод "Route.Update" называет "UpdateRoutes" на каждом модуле авиакомпании (например, «Ryanair.UpdateRoutes», «easyJet.UpdateRoutes»)
- Он должен работать таким же образом с большим количеством моделей (таких как «Flight.find») и другими авиакомпаниями («Delta.FindFlights»))
Квесто ns:
- Где я могу хранить все модули? Я не вижу ни одной папки приложений/модулей в Rails.
- Если мои модули требуют драгоценных камней, следует ли включать их в модули или модели (где они фактически используются)?
- Я хочу сделать приложение масштабируемым. Например, я хочу добавить новую рабочую авиакомпанию (модуль) без изменения кода в «Маршрут», «Полет» или любую другую модель. Я представляю себе что-то вроде метода «IncludeAirlines», который будет проходить через модули/авиакомпании/, имя .rb, включать в себя каждый модуль и вызывать необходимый его метод (например, имя .UpdateRoutes). Есть ли лучший способ реализовать это в Ruby on Rails?