设计大型django项目的最佳方式是什么?这些教程提供了设置应用程序、模型和视图的简单说明,但关于应用程序和项目应如何分解、典型项目中应用程序之间允许/必要的共享程度(显然这在很大程度上取决于项目)以及通用模板应如何/在何处保存的信息较少.
关于为什么某个项目的布局比另一个更好,有没有人给出过例子、建议和explanations条建议?我对大量单元测试(实际代码库大小的2-5倍)和字符串外部化/模板的结合特别感兴趣.
设计大型django项目的最佳方式是什么?这些教程提供了设置应用程序、模型和视图的简单说明,但关于应用程序和项目应如何分解、典型项目中应用程序之间允许/必要的共享程度(显然这在很大程度上取决于项目)以及通用模板应如何/在何处保存的信息较少.
关于为什么某个项目的布局比另一个更好,有没有人给出过例子、建议和explanations条建议?我对大量单元测试(实际代码库大小的2-5倍)和字符串外部化/模板的结合特别感兴趣.
主要指导原则类似于任何其他大型代码项目.应用程序应该解决单一的、明确定义的责任."应用程序"这个名称用词不当;Django应用程序应该更多地被认为是可重用的组件,可以插入到一起来创建一个真正的应用程序.每个应用程序的测试都应该包含在该应用程序中.应用程序应该尽可能地彼此解耦,但显然会有依赖关系,所以目标应该是保持依赖关系图尽可能简单和合理.
我更喜欢将一个项目的所有模板保存在一个项目范围的模板目录下,每个应用程序都有一个子目录(在Django中, for each 应用程序使用模板子目录是一个非常强大的约定,因为它避免了应用程序之间的模板名称冲突).使用单个项目范围的模板目录的原因是,模板、模板继承树和块名称可能非常特定于项目,因此很难提供可以插入任何项目的"默认"应用程序模板.已经有一些人try 为基本站点范围的模板和它们定义的块确定标准命名约定,但我还没有看到一个标准出现(他们在Pinax岁时做事情的方式可能是我们最接近标准的方式).
再说"字符串外部化",如果您指的是i18n和l10n,Django对此和它放置.po文件的标准位置有很强的支持-判断docs.