Многоразовая часть приложения - PullRequest
0 голосов
/ 29 января 2012

Я хочу создать механизм оплаты смс и использовать его в нескольких приложениях. Лучше всего иметь возможность просто скопировать / вставить один каталог, возможно настроить некоторые мелочи и просто заставить его работать (с представлениями, контроллерами и т. Д.).

Какой лучший способ сделать это? Конечно, я не спрашиваю об этом смс, а о способе создания изолированной части приложения. Это что-то вроде вспомогательного приложения внутри основного приложения.

Ответы [ 3 ]

2 голосов
/ 29 января 2012

Существует три способа создания расширений Rails: обычный старый код ruby, Railties и Engines.

Railties и Engines позволяют вам взаимодействовать с платформой Rails во время инициализации с использованием хуков и, следовательно, расширять Rails. Фактически каждый крупный компонент Rails (ActiveRecord, ActionPack и т. Д.) Является Railtie.

Основное различие между Railtie и движком Rails состоит в том, что движок может определять свою собственную конфигурацию, модели, контроллеры и представления. В каком-то смысле движок - это приложение Rails, которое вы можете развернуть в другом. В вашем случае, я думаю, Rails Engine будет правильным выбором.

Какую бы опцию вы не использовали, вам придется создать гем, чтобы распространить ваше расширение и поделиться им между проектами.

Вот суть, объясняющая понятия Railtie и Engine
Руководство по запуску собственного двигателя рельсов.
Enginex, инструмент командной строки, который создает Rails 3 Engine

0 голосов
/ 29 января 2012

Я думаю, что лучший способ извлечь повторно используемую часть вашего приложения - это создать RubyGem.Вы можете найти учебник по созданию RubyGems здесь .И есть Ювелир , очень хороший инструмент для создания RubyGems.Подробнее о Ювелире вы можете найти здесь

0 голосов
/ 29 января 2012

Полагаю, лучший способ повторно использовать ваш код - поместить их в гем, а затем установить этот камень.

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