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一些擴展的集合。東西比較雜,具體使用仍是去看看她的文檔吧。
相關文章
相關標籤/搜索