zoukankan      html  css  js  c++  java
  • Django资源汇总(转)

    Django

    我和Django

    我使用python的很大一部分原因就是django。虽然在以前也用过python,不过始终没有什么特别的感觉。然后接触到了django。可以说django非常对我的胃口,特别是他的admin给人的感觉特别的棒。
    django是个独断且固执的框架,框架里用的组件都是自己写的,而且往往会“知错不改”。所以用django就要试着thing in django,接受django所谓的设计哲学,如果接受不了那就换pylons或ROR什么的试试吧。
    django并不完美,但这并不妨碍她成为一个优秀的web开发框架。

    资源

    使用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进行整理。

    项目组织

    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。

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

    Blog

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

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

    调试

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

    数据库升级

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

    •  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功能

    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一些扩展的集合。东西比较杂,具体使用还是去看看她的文档吧。
  • 相关阅读:
    [CodeForces]Codeforces Round #429 (Div. 2) ABC(待补)
    About Me
    2018-06-14
    Codeforces Codeforces Round #484 (Div. 2) E. Billiard
    Codeforces Codeforces Round #484 (Div. 2) D. Shark
    Codeforces Educational Codeforces Round 44 (Rated for Div. 2) F. Isomorphic Strings
    Codeforces Educational Codeforces Round 44 (Rated for Div. 2) E. Pencils and Boxes
    Codeforces Avito Code Challenge 2018 D. Bookshelves
    Codeforces Round #485 (Div. 2) D. Fair
    Codeforces Round #485 (Div. 2) F. AND Graph
  • 原文地址:https://www.cnblogs.com/UnGeek/p/3294911.html
Copyright © 2011-2022 走看看