2011-05-02 140 views
0

我有一组模型需要在几个rails3/sinatra/etc应用程序之间共享。我还没有看到过这样的事情,我很好奇以干燥的方式去做这件事的最有效方法是什么?我可以为模特指定一个中心区域吗,我可以创建一个只带来我需要的模特的宝石吗?其他人如何解决这个问题。我正在考虑制作一个小小的宝石,或者我还不知道如何处理这件事。在应用程序之间共享的模型:DataMapper Rails其他

我正在使用Datamapper,但这也是构造多个rails/non rails ruby​​应用程序的一个更普遍的问题。

回答

0

您可能会发现在存储库中包含一个包含模型和相关单元测试的子模块比创建完整的gem更容易。通过这种方式,您可以从一个应用程序修补到另一个应用程序,而不必从头开始。

+0

这是我需要采取的第一步。 – blueblank 2011-05-02 18:14:31

0

您可以将公共API创建为您想要在其他应用程序中使用的模型。

在rails中你应该已经有了REST控制器,所以你可以在其他应用中使用ActiveResource。

你可以将你的ActiveResource类装入gem中,只是为了简化事情并保持干爽。

对于某些示例,您可以检查:http://api.rubyonrails.org/classes/ActiveResource/Base.html

如果您使用ActiveRecord或DataMapper,则无关紧要。

+0

这很有趣,我可以看到它的使用。我需要深入研究如何在db服务器上实现像这样的类似于api的功能。 – blueblank 2011-05-02 17:01:13

相关问题