我有一个响应 api 调用的 Sinatra 应用程序,以及一个处理报告和所有漂亮的东西(如图形和网站)的 Rails 应用程序。两者都需要访问一组通用模型(例如帐户、站点等)
我的问题是:如何有效地在两个应用程序之间共享代码?例如,如果我在 Sinatra 中编辑 Accounts 模型,我不想记住在 Rails 应用程序中复制相同的更改。我宁愿不使用 Rails 机架安装,因为这两个应用程序将位于不同的集群上。
我在 StackOverflow 上看到过关于以下方面的建议:
- Git 模块
- 符号链接(不适用于我同事使用的 Windows)
- Rails 插件(我怀疑这是否适用于 Sinatra)
- Ruby Gems(我认为这对于模型数据来说太过分了,但这只是我)
这两个应用程序位于不同的存储库中。基本上,我首先开发 API,然后在 Rails 应用程序中添加特定于 Account 的逻辑(主要是因为 Rails 有更多的库可以更容易地开发这些东西)。
你将如何解决这个问题?