Django
我和Django ¶
我使用python的很大一部分緣由就是django。雖然在之前也用過python,不過始終沒有什麼特別的感受。而後接觸到了django。能夠說django很是對個人胃口,特別是他的admin給人的感受特別的棒。
django是個專斷且執拗的框架,框架裏用的組件都是本身寫的,並且每每會「知錯不改」。因此用django就要試着thing in django,接受django所謂的設計哲學,若是接受不了那就換pylons或ROR什麼的試試吧。
django並不完美,但這並不妨礙她成爲一個優秀的web開發框架。 css
資源
使用django搭建的站點
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項目的目錄組織方式都各不相同。爲解決該問題,也出現了一些相關項目。 前端
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目前還不支持表結構的自動更新,不過相關的第三方app倒很多。 git
- South South已經比較成熟了,就目前而言South是該類APP的不二選擇。
註冊、認證
權限認證
- django-guardian Django提供了精確到對象的權限控制API(好比那些人有權限編輯具體的某個文檔),但Django並無相關的實現。django-guardian給出了該API的實現,讓你能夠實現對具體對象的權限控制。
css/js靜態資源壓縮
Tagging
爲站點增長Tag功能 github
Avatar(用戶頭像)
翻頁
搜索
RESTful
消息隊列(異步執行)
- django-celery web應用中不免會有些很費時的操做須要做成異步處理(好比在後臺發送郵件,更新索引等),django-celery就是爲解決該問題出現的。
其餘