Django资源汇总(转)

Django

我和Django

我使用python的很大一部分缘由就是django。虽然在之前也用过python,不过始终没有什么特别的感受。而后接触到了django。能够说django很是对个人胃口,特别是他的admin给人的感受特别的棒。
django是个专断且执拗的框架,框架里用的组件都是本身写的,并且每每会“知错不改”。因此用django就要试着thing in django,接受django所谓的设计哲学,若是接受不了那就换pylons或ROR什么的试试吧。
django并不完美,但这并不妨碍她成为一个优秀的web开发框架。 css

资源

使用django搭建的站点

  •  addons.mozilla.org FireFox的插件下载网站,从google的统计数据上看PV大概在douban一半的样子。技术细节方面能够看他们的 幻灯片。该网站彻底开源,代码能够在 这里找到。
  •  disqus 这个网站在国内见得很少,可能不少人对它不太清楚。这个网站为其余网站增长评论功能。据其介绍,该网站每个月有1.2亿的独立访问者。技术细节参考他们的 幻灯片
  •  bitbucket 基于HG的代码托管网站。
  •  django官网 django官网自己使用django搭建,而其提供了代码。django官网的大多功能由整合的trac实现,因此网站的django代码没几行。
  •  海报网 听说这是目前流量最大的django站点。据个人了解,这个网站的流量也确实大的有些超乎想象,该网站应当有接近CSDN的流量。不过这个网站将大量的页面进行了静态化,若是以这个网站的标准来评价django的性能应当不够客观。
  •  好看簿 国内的另外一个django站点,目前也有不错的流量。做为该网站的用户,我感受网站的响应速度并不怎么快。看来好看簿在服务器优化方面还须要更多的努力。
  •  instagram 在短期内迅速崛起的一个iPhone应用,用户增加的很是快。从技术人员的角度看,instagram的迷人之处是在不足10人的状况下,服务了万用户。在这篇文章( What Powers Instagram: Hundreds of Instances, Dozens of Technologies)里,有介绍他们所用到的一些技术。

django的开源项目

  •  pinax 这是我看到的最有价值的django开源项目。pinax能够看作是django的一个脚手架。她提供了快速开始一个新django项目的方法,同时对大 量第三方app的使用方法进行了演示。django的app质量良莠不齐,若是你想挑选app,那你能够看看pinax里都集成了哪些app。pinax 里集成了的app一般都不至于太烂。此外pinax自身也带了一些有用的app,好比blog等。
    若是你想以最快的速度了解pinax,能够去  http://cloud27.com/ 看看。这是一个用pinax搭建的SNS网站。
  •  Satchmo 网店系统。看她的介绍,彷佛已经有很多人在用这东西了。
  •  LFS(Lightning Fast Shop) 网店系统,就Demo来看彷佛是倾向于房屋交易平台。陆陆续续的也有部分商业网站开始使用该系统了, 好比这个
  •  reviewboard 很是有前途的一个code review工具。最开始是 VMware在用,来后给开源了。

django相关资源

  •  twitter-bootstrap twitter开源的前端UI解决方案。对于缺乏美工的开发者而言利用bootstrap能够很方便的做出还不错的界面。
  •  Fabric Fabric是一个Python库,能够经过SSH在多个host上批量执行任务。你能够编写任务脚本,而后经过Fabric在本地就可使用SSH在大量远程服务器上自动运行。这些功能很是适合应用的自动化部署,或者执行系统管理任务。
  •  virtualenv 用于在一台机器上建立多个独立的python运行环境。使用virtualenv能够避免因在一台机器上部署多个应用时出现的python库版本冲突问题。
  •  Gunicorn Gunicorn 绿色独角兽'是一个Python WSGI UNIX的HTTP服务器。有着不错的性能,并且使用很是简单。instagram使了Gunicorn。

django的可重用APP

 Django Packages 这个网站将可复用组件进行归类,并以表格的形式进行对比。若是你想找Django可重用APP,去这个网站是最方便的。我这里只对我认为最优秀的Django APP进行整理。 html

项目组织

django没有统一的项目组织规范,因此django项目的目录组织方式都各不相同。为解决该问题,也出现了一些相关项目。 前端

  •  dj-scaffold 个人django脚手架项目。提供命令dj-scaffold.py,用于生成一个基础的django项目模板。
  •  django-startproject 也是用于生成项目模板的项目。个人很多代码都是参考这个项目的。
  •  playdoh 顶着mozilla的名头,应当仍是值得一看的吧。不过他的目录组织方式不太符合个人习惯的。

CMS

  •  Django CMS Django CMS与其说是一个APP,倒不如说这是一个框架。Django CMS是目前开源Django CMS中功能最为完善的一个。Django CMS提供了插件接口,能够方便的以插件的方式进行扩展。此外,目前现成可用的插件也已经有一大堆了。

Forum

Django的论坛APP很多,但到就目前而言,尚未什么杀手级的APP。 python

  •  DjangoBB 功能比较完整。不过我认为搞的有些复杂了,易用性通常。若是你贪图它相对强大的功能,又不怕麻烦的话,能够试试。
  •  LBForum 我开发的论坛应用。优势是界面漂亮(提供了 FluxBB V2EX两种界面风格),部署简单,功能方面就不怎么强大了。若是你想要一个简单易用的Django论坛系统,推荐这个。

Blog

用Django写Blog数量众多(多是数量最多的Django应用了),我虽然也写了一个,但我是不会去用这些Django博客。Blog很重要的一点是那些漂亮的模板。若是使用这些小众的东西,实在是难以找到让人满意的模板。 jquery

  •  zinnia 功能比较完善的一个Django博客,界面比较清爽。简单的看了一下她的代码,感受写的很规范。比较看好这个博客系统。若是你想用django搭建本身的博客,推荐试试。

调试

  •  django-debug-toolbar 为django站点增长调试功能,支持查看django生成的sql语句,及sql的执行时间等,功能强大。不过因为该组件使用了jquery,彷佛会使用部分使用了jquery的站点没法正常工做。
  •  sentry  disqus的开源项目。将django的全部异常保存到数据库,并提供异常的察看界面。
  •  django-devserver django开发服务器扩展。将SQL语句/执行时间等调试信息直接显示在控制台上,并且是以彩色的方式显示。

数据库升级

在项目开发过程当中表结构的变更老是不免,django目前还不支持表结构的自动更新,不过相关的第三方app倒很多。 git

  •  South South已经比较成熟了,就目前而言South是该类APP的不二选择。

注册、认证

  •  django-userena 功能完善的注册模块,支持用户信息维护,头像上传,甚至还带了个站内消息模块。推荐使用。
  •  Django-Socialauth 支持使用Facebook, Yahoo, Gmail, Twitter and Openid的账号进行登录认证。
  •  django-socialregistration 支持OpenID, OAuth and Facebook的认证。彷佛和Django-Socialauth差很少。没有对比过,但愿用过的朋友给些心得。
  •  django-registration 注册功能,支持账户的邮件激活。该项目彷佛已经中止维护了。可做为参考项目,不太建议在新项目中使用了。
  •  django-auth-ldap Django的LDAP认证支持,使用LDAP的集成变得简单。

权限认证

  •  django-guardian Django提供了精确到对象的权限控制API(好比那些人有权限编辑具体的某个文档),但Django并无相关的实现。django-guardian给出了该API的实现,让你能够实现对具体对象的权限控制。

css/js静态资源压缩

  •  django_compressor 自动对django模板中的css/js进行压缩处理,加快网站的加载速度。支持coffeescript以及less。

Tagging

为站点增长Tag功能 github

Avatar(用户头像)

  •  django-avatar 当前首选。感受复杂了些,并且我以为支持多个头像啥的功能不是很实用,还增长了复杂度。
  •  django-simple-avatar 我本身写的avatar APP,其中的很多代码来源于django-avatar。用起来比django-avatar要简单些。

翻页

  •  django-pagination 一组翻页相关的utils,包括用于实现翻页的tag等。使用起来很是简单。是目前使用最多的分页APP。
  •  django-paging 另外一个翻页的APP,优势是支持jinja2做为模板。若是模板用了jinja2,能够考虑下。

搜索

  •  Haystack 全文搜索组件,提供对 Solr  Whoosh  Xapian的支持。就它的quick start来看是挺易用的。该项目托管在github,彷佛还挺有人气。

RESTful

  •  django-tastypie 编写RESTful API用的APP,此类APP中这个目前活跃程度以及发展状况来看是最佳选择。
  •  django-piston bitbucket在使用,不过活跃程度比较低。用来写RESTful API的东西,听说很方便。未使用过,很少作评论。

消息队列(异步执行)

  •  django-celery web应用中不免会有些很费时的操做须要做成异步处理(好比在后台发送邮件,更新索引等),django-celery就是为解决该问题出现的。

其余

    • django-extensions django一些扩展的集合。东西比较杂,具体使用仍是去看看她的文档吧。
相关文章
相关标签/搜索