2010-08-11 74 views
6

我有一个现有的Django应用程序与一个非常典型的模型实现,它是由数据库支持的。我的任务是改变这个模型,以便不从数据库中获取信息,而是从服务中获取信息(例如通过HTTP)。因为现有的代码已经使用了这个模型,所以维护相同的模型接口会很好,所以它继续像典型的Django模型那样工作。如何在Django中实现非数据库支持的模型?

这就提出了几个问题:

  • 是否有可能做到这一点,而不必从头开始重新编写界面,使它看起来像Django的模型界面? (这个stackoverflow问题似乎会建议,否则:Django MVC pattern for non database driven models?

  • 会写一个这个模型的自定义管理器是一个适当的方法(或我误解了管理器的作用)?

  • 由于新模型的服务支持性质,缓存将比以前更重要。这是应该在模型层面实施的吗?

回答

4

看一看django-roa。从它的声音,它可能正是你正在寻找的东西。

+0

这真的很整齐,我以前没有见过。不幸的是,有问题的服务不是REST风格的服务,我想我需要能够使用自定义代码来执行通常由数据库完成的工作。 尽管如此,其中一个人可以将他们的模型附加到RESTful服务中,这非常好。 – 2010-08-11 22:17:14

+0

如命运所料,我不再需要在现实生活中拥有非数据库模型。因此,对于我宁愿问的问题,这是一个更好的答案。谢谢! – 2010-08-12 15:54:05

相关问题