最近經常在這個版面看到Django相關擴展的介紹,而其一個擴展寫一個帖子,覺得沒太必要吧。
以前整理的django資源列表,從我的wiki上轉過來的。
要找django資源,官網的wiki也是一個不錯的地方。
http://code.djangoproject.com/wiki/DjangoResources
資源
* django官網
* django文檔
* Django Step by Step 曾是最佳的django入門教程,只是這個教程是針對0.95的,現在不少地方已經有所變動。
* django可復用app設計
* django最佳實踐 django可復用app設計 的一個更好的分支。個人為人這個文檔是每個django開發人員必讀的。
* django最佳實踐 中文翻譯
* django book 一本免費的django電子書
* django book 中文翻譯
* djangosnippets 一個關于django的代碼片段網站,在里面可以找到一些應用的django代碼片段。站點本身是用django寫的,且開發源碼。
* djangosites 這個網站里介紹了很多實用django搭建的站點。而且可以從這里找到很多帶源代碼的django站點。不過我個人覺得里面沒有多少值得參考的站點代碼。
使用django搭建的站點
* django官網 django官網本身使用django搭建,而其提供了代碼。django官網的大多功能由整合的trac實現,所以網站的django代碼沒幾行。
* 海報網 據說這是目前流量最大的django站點。據我的了解,這個網站的流量也確實大的有些超乎想象,該網站應當有接近CSDN的流量。不過這個網站將大量的頁面進行了靜態化,如果以這個網站的標準來評價django的性能應當不夠客觀。
* 好看簿 國內的另一個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的可重用app
CMS
* Django CMS Apps Comparison Django CMS Apps的比較
Forum
* Django Forum Apps Comparison Django Forum Apps的比較
調試
* django-debug-toolbar 為django站點增加調試功能,支持查看django生成的sql語句,及sql的執行時間等,功能強大。不過由于該組件使用了jquery,似乎會使用部分使用了jquery的站點無法正常工作。
* django-db-log 將django的異常保存到數據庫。
* django-logging 增加sql日志。直接在站點的網頁上查看當前頁面所使用sql語句以及執行時間。功能比django-debug-toolbar要弱不少,不過要是django-debug-toolbar把你的頁面毀了,那就試試這個吧。
數據庫升級
在項目開發過程中表結構的變動總是難免,django目前還不支持表結構的自動更新,不過相關的第三方app倒不少。這些app各有各的特色,具體如何選擇就要看個人的喜好了。
* SchemaEvolution 介紹django數據庫升級的wiki頁面,相關的app都可以在這個頁面找到。
未分類
* django-registration 注冊功能,支持帳戶的郵件激活。
* django-tagging 為站點增加tagging功能
* django-voting 投票功能
* django-ajax-validation 使用ajax方式對表單進行校驗,需要jquery的支持。這個組件只能校驗,如果需要增加ajax提交表單的功能,還需要自己手動做些修改。
* django-announcements 發送站內公告,該公告只顯示一次。可以設置公共的發送對象(所有人,指定用戶,登陸用戶)。
* django-avatar 為用戶增加設置個人頭像的功能。支持 http://www.gravatar.com/ 和用戶上傳頭像。
* django-dbtemplates 將django的template保存在數據庫,并通過cache來加速template的加載。這樣可以很方便的通過admin來編輯template。我想這東西應當可以用來實現一些簡單的CMS功能,不過似乎用處不是太大。
* django-microblogging 類似Twitter的微型博客
* django-notification 消息分發組件,用來實現類似好友最新動態的功能。
* django-pagination 一組翻頁相關的utils,包括用于實現翻頁的tag等。
* django-robots 通過django的admin來管理robots.txt。不過我覺得robots.txt這東西為什么還需要用admin來管理,還不如直接編輯來的方便。
* django-messages 實現站內消息的功能。目前該組件的功能的功能還比較弱,雖然作者在進行重構,但似乎進展緩慢。如果有需要我可能會自行對該組件進行一些增強。
* django-threadedcomments 評論組件,可以給任何的models增加評論功能。
* django-extensions 一些全局的 management extensions。其中包括create_app的增強,使用werkzeug做開發服務器等功能。
* django-uni-form 以div方式渲染forms
* django-timezones 時區設置組件,允許用戶設置自己所在的時區。
* django-bookmarks 書簽管理組件
* django-email-confirmation 在用戶設置郵件地址后,給用戶的郵箱發送一封確認郵件。用戶點擊郵件里的link來確認郵件地址的有效性。
* django-mailer 郵件發送的增強組件,會在郵件發送失敗時記錄失敗日志。
* django-friends 朋友組件,支持邀請用戶成為好友等。
* django-locations 似乎是一個基于地區的社交網絡,需要yaohoo map的支持。
* django-oembed 方面媒體(視頻等)內容嵌入,自動將媒體的連接轉換成正確的html代碼。
* django-swaps 易物平臺,比如用PSP換NDS啥的。
* django-wikiapp wiki組件,支持多種wiki語法。不過目前該組件的功能還是比較簡單,比如不支持附件。
* django-mptt 用于生成樹形列表的app。如果你認為它會自動給你生成一個完整的樹,那你就錯了,她只是一組工具。我感覺這東西并不是太好用,是否有什么優點,暫時不太清楚。
* django-photologue 圖片管理,上傳圖片,縮略圖顯示等。
* django-filebrowser django-admin的一個擴展,可以直接通過admin對服務器上的文件進行管理。我沒用過這東西,不過看介紹,感覺非常棒。
* goflow Django上的一個工作流引擎,設計靈感來源于OpenFlow。沒用過這東西,對工作流也不太了解,所以也不知道這東西好不好。不過這似乎是django上唯一的一個工作流app。