巨大的Django项目

时间:2013-01-11 07:29:03

标签: python django

我有一份新工作和一个巨大的django项目(15个应用程序,超过30个位置)。从头开始理解它的架构非常困难。有什么技术可以在一开始就简化我的工作吗?有时甚至很难理解在哪里找到我需要的表格或视图... thnx提前。

5 个答案:

答案 0 :(得分:4)

当我遇到这种问题时,我打开笔记本并回答以下问题:

<强> 1。基础设施

  • 服务器配置,操作系统等
  • 查看数据库类型(mysql,postgres,nosql)
  • 外部APIS(例如Facebook Connect)

<强> 2。后端

  • 写一个简单的描述
  • 从用户写入其输入/输出(尝试彻底;哪些字段是必需的,哪些不是)
  • 将其FK及其与任何其他应用的关系(及其原因)写入
  • 列出应用正在使用的每个插件。为了什么目的。例如在rails中我写道:'gem will_paginate - 在多个页面上显示留言簿应用结果'

第3。前端

  • 查看JS框架
  • 检查主样式表文件(用于模板)
  • 用于创建基于新模板的页面的主要html / haml(etc)文件。

当你这样做的时候。我认为你准备得更充分,能够更深入地开发/调试应用程序。祝好运。

答案 1 :(得分:3)

使用此http://packages.python.org/django-extensions/graph_models.html

从模型生成关系图,以便您可以直观地看到模型之间的相互关系。这将为您提供关于应用程序的好主意

答案 2 :(得分:2)

1)尝试从头开始安装网站。您将找到网站运行所需的外部应用程序。

2)逆向工程。浏览网站,尝试找出要将内容更改为该页面的操作。从url开始,在urls.py中查找,阅读视图,检查模型。其他流程是否有任何提示?

3)尝试写下您不理解的所有内容,并记录答案以备将来参考。

答案 3 :(得分:2)

我会克隆这个项目,这样你就可以无休止地搞砸了。

然后我会开始减少代码。 “如果只是在这里删除这个功能会怎么样?

同时获取django调试工具栏:

https://github.com/django-debug-toolbar/django-debug-toolbar

一个好的终端调试器也很金,有很多,这里有一个例子:

https://github.com/tomchristie/django-pdb

这允许您暂停代码,甚至在运行时注入和改变参数。就像C中的GDB一样。

答案 4 :(得分:-1)

如果您使用FireFox,您可以在其上安装FireBug,当您提交ajax表单时,您可以看到在您可以轻松找到使用此表单数据的控制器之后向哪个URL发送请求。在chrome,此实用程序默认嵌入并通过F12键调用。