私はapi呼び出しに応答するSinatraアプリケーションと、レポートを扱うRailsアプリケーションと、グラフやWebサイトのようなすべてのものを持っています。どちらも共通のモデル(アカウント、サイトなど)にアクセスする必要がありますSinatraとRailsの間のモデルコードを共有する
私の問題は、2つのアプリケーション間で効率的にコードを共有するにはどうすればよいですか?たとえば、SinatraのAccountsモデルを編集している場合、Railsアプリケーションで同じ変更を複製することを忘れたくはありません。私はむしろ2つのアプリケーションが別々のクラスタ上にあるのでRails Rackのマウントを使用しないでください。
私はStackOverflowののについての提案を見てきました:
- Gitリポジトリモジュール
- シンボリックリンク(私の同僚が使用するWindowsでは動作しません)
- のRailsプラグイン(私はこれがシナトラで動作しないだろう)
- ルビーの宝石(私はこれがちょうどモデルデータはあまりにも行き過ぎだと思うが、それは私だけです)
2つのアプリA別のリポジトリに戻ってください。基本的には、まずAPIを開発してから、Railsアプリケーションの後ろにアカウント固有のロジックを置いています(主に、Railsにはこうした種類の開発を容易にするライブラリがたくさんあるためです)。
どのようにこの問題を解決しますか?
同じリポジトリにあるのか、別のアプリケーションになっていますか? –
彼らは別のリポジトリにあります:)あなたはそれらが同じリポジトリにあることをお勧めしますか? – parasquid
いいえ、オプションが少しずつ変更されているのに不思議でした。個人的には、gitモジュールかプライベートな宝石のいずれかが最良の選択肢だと思います。 –