将django连接到Web服务而不是数据库

时间:2012-08-22 11:01:53

标签: django web-services orm django-models django-views

我们想用webservice替换django数据库层,我们希望尽可能顺利地完成。基本上django将处理所有HTTP请求,会话,模板,身份验证等,web服务将处理与数据库相关的所有内容。

如果不重做现有的大部分代码,您如何建议最好的方法?有没有人做类似的事情?我假设由于django松散耦合,这应该是可行的。

我们想要这样做的主要原因是因为我们拥有比django开发人员更多的java开发人员,因此我们考虑在java中进行web服务。这是迄今为止使用我们公司资源的最佳方式,问题是如何以最好的方式做到这一点。该项目很年轻,我们期望它在复杂性方面有很大的增长,因此长期以这种方式将开发人员拆分对我们来说是最好的。

谢谢,    罗杰

2 个答案:

答案 0 :(得分:1)

在我的公司,我们专门与Django合作,并以完全脱钩的方式。我们的网络服务由Pyramid + Cornice提供支持,我们利用优秀的Python-Requests库与我们的服务层进行交互。

应用程序的身份验证和权限使用Authentic2和ADFS使用我们开发的自定义后端完成。

因此,我们的应用程序中没有任何模型对象,但我们仍然可以充分利用Django表单和表单集的所有优点。

我们的webservices返回JSON,因此我们将键值对的列表传递给模板以及向表单提供初始数据等非常简单。这与从Django ORM调用返回值或values_lists没有什么不同。 / p>

据我所知,编写一个连接到Web服务的Django模型类没有替代品。

答案 1 :(得分:1)

我看到你的帖子后发现了这个项目http://code.larlet.fr/django-roa/wiki/Home 似乎是你正在寻找的确切事物。