Django 可复用应用
我看到很多关于Django项目和可重用应用之间区别的资料,最明显的有DjangoCon的演讲和Pinax项目。
不过,作为一个新手,自己写项目和可重用的软件感觉有点难。我不太明白模型应该放在哪里(还有应用是怎么灵活和宽容的),模板又该放在哪儿,不同的应用是怎么结合在一起的。
有没有关于创建包含可重用应用的项目的教程?或者好的实践指南?最好是有一个示例项目,里面有自己的应用(而不是依赖外部应用)?
我想了解项目的架构和应用之间的互动,而不仅仅是构建可重用的应用。我在网上找到的大多数教程都是关于如何构建一个可重用的应用,或者是构建一个简单的单体博客应用,这种应用只依赖于内置模块或django.contrib模块。
3 个回答
3
你可以观看这个视频(DjangoCon 2008: 可重用的应用) - http://www.youtube.com/watch?v=A-S0tqpPga4,了解如何使用它。
在Google、djangosnippets、git等地方,有很多可重用的应用。最受欢迎的有:
- django-contact-form - 用于反馈的表单;
- django-debug-toolbar - 用来查看SQL查询等信息;
- django-registration + django-profiles - 省去注册的繁琐过程;
- django-mptt - 用于树形结构;
- django-pagination - 有用的分页查看器;
- django-stdimage 或 sorl-thumbnail - 处理图片的工具;
- south - 用于数据库结构迁移;
阅读这些示例文档,节省你的开发时间。祝你好运!
3
如果你想看看“可以重复使用的应用程序之间互相互动的示例项目”,那就去下载Pinax吧。你可以克隆他们的一个示例项目(只需按照说明操作),然后仔细阅读代码。
4
James Bennett的《实用Django项目》这本书对这些主题讲得很不错,里面还有一章专门讲“编写可重用的Django应用”,通过一个例子来演示如何把书中的一个示例项目拆分成一个独立的应用。