我是Django的初学者,作为一个练习项目,我想创建一个带有仪表板的网页,以跟踪特定p2p平台上的投资。他们没有一个不错的仪表板(但是提供了包含所有数据的excel文件)。正如我所看到的,在这个项目中我需要做的主要步骤如下:
经过一番挣扎,我实现了要点。 2,并将在以后处理1和5。但是3号是我现在最大的问题。
我完全不确定我需要做什么,而google并没有帮助。我需要先计算数据,然后才能从中创建仪表板。合并两个表,然后将它们与第三个表连接在一起,创建一些其他所需的计算字段。我是否要在数据库中创建视图,并以某种方式将此数据获取到Django?还是我需要创建一些规则,以便在导入时创建新表?我认为使用表而不是视图将具有更好的性能。还是我做错了,应该为这种任务采取完全不同的方法?另外,SQLite是否是完成任务的良好数据库(我正在使用它,因为它是Django中的默认数据库)?
我认为对于vizualization部分,我将需要使用某些JavaScript库(例如D3)来实现?然后将使用第3步中的数据。
答案 0 :(得分:1)
对于第3部分,有两种方法,要么做这些事情并将结果保存到数据库中,要么可以在需要时使用django模型功能(例如注释,聚合等)来完成。
选项1需要添加一个供您计算的表,即Django中的模型。
选项2要求在视图或模型管理器中创建一个批注,然后在视图中使用它们。
哪个最佳,取决于您的数据量,计算的复杂程度和需要的频率。
对于数据库; SQLite只是供开发使用的数据库,而不是用于生产的数据库,并且可能没有大量的数据和大量的计算。 django推荐的数据库是postgresql,它非常擅长处理数百万甚至数十亿的数据并进行繁重的计算。
要实现可视化,您应该在模板方面(基本上是HTML,CSS和JS)进行处理。