如何在Django上构建幻想体育分析网站的后端?

时间:2013-12-17 23:25:10

标签: python database django model-view-controller analytics

我正在寻找一个分析幻想体育网站,我需要一些帮助来思考如何整体构建网站。这绝对是以前完成的,但我这样做是为了教育目的,因为这是我的爱好!

该网站的想法是:

  • 用户可以创建帐户
  • 它将使用Yahoo / ESPN API绘制他们各自的联赛数据(名单,统计数据, 等)
  • 每个用户帐户都可以链接多个联盟 体育(即2x篮球联赛,1x足球,1x棒球)
  • 该网站将根据该项运动进行某些分析,并且 他们所参加的联赛类型(h2h或roto)。

通过django教程,我意识到他们不仅使用mvc方法,而且还区分项目和应用程序。

我的问题是:

  1. 如何构建网站的后端?
  2. 每项运动都能获得它的个性化应用吗?各种类型的联赛怎么样?
  3. 最后,“登录/帐户创建”是否会获得它的应用程序 自己也拥有?它横跨所有幻想体育。
  4. 有点困惑,因为这是我第一次创建像这样的网站。同样,我明白我应该一步一步,但我只是想要对整体愿景有一个很好的理解

1 个答案:

答案 0 :(得分:3)

此问题没有正确答案。不同的程序员使用不同的结构。但是,我们可以提供建议。

您的项目肯定会有核心应用程序,负责用户和帐户管理。此应用程序应提供所有常用功能。登录/注销/恢复功能属于此类别,高分,历史,朋友等也是如此。

先做。当它正常工作时,您很可能希望将联盟实现为不同的应用程序。驱动每项运动的逻辑是不同的,因此将它保持分离是有意义的,并将其安装在单独的URL路径中。所有这些应用都将,而且应该在很大程度上取决于核心。

公平警告:在实施每个应用时,您可能会发现自己会重复模式。其中一些模式可以安全地迁移到核心,但其他一些模式看起来相同,但只是足够不同以保证自己的代码。先实施,找到共同点,最后抽象。

这种架构可以让您启用和禁用联赛,以及推动联盟特定的升级,几乎没有麻烦。你可以在不同的联赛上工作,而不必担心在其他地方破坏。

换句话说,你有正确的初步方法。努力,犯错误,学习,重构,抽象。尝试在第一次尝试时完美只会减慢你的速度。