关于Django中可插入任务框架的建议

时间:2010-05-17 12:48:31

标签: python django plugins

我正在开发一个网站,旨在成为多种图像处理算法的GUI(称为“任务”)。

目前,这些算法中只有一个已完成,但还有更多算法(具有相似但不完全相同的工作流程)

基本上,算法的工作方式如下(不是很重要,而是为了清晰起见): 1)输入一些参数和输入图像 2)运行算法第一部分 - 算法运行 - 3)审查中期结果 4)根据需要编辑参数,然后转到2。 5)运行算法第二部分 - 算法运行 - 6)审查结果 7)根据需要调整一些中期结果,然后转到5 8)全部完成

我希望其他一些额外的任务有一个相似的工作流程,尽管它们完全不可能。

因此,实现这一点的简单方法是为每个算法创建一个单独的django应用程序。

但是,我希望能够浏览完成任务的排序列表(完成时间),并且每个任务都会显示摘要(名称,描述,开始时间,缩略图)。

有没有人可以就如何实现这一点向我提供一些建议?我想尽量保持简单,因此可以尽可能简单地“插入”其他任务。

1 个答案:

答案 0 :(得分:0)

我会创建一个具有非常抽象的Task模型定义的应用程序。 Task模型可能包含以下属性:

  • 输入参数,
  • 要运行的功能,
  • 任务提交的时间,
  • 任务实际运行的时间,
  • 结果(在完成之前会像单身Task.NotFinished一样)。

您可以考虑使用twisted来运行任务,因为:

  • twisted有一个经过精心设计和测试的异步任务实现;和
  • 您可以在其他处理器或计算机上运行任务。