Django開發社交類網站必備的10個第三方應用

本文首發於個人博客 追夢人物的博客,歡迎關注。html

Django 的好處就是大而全,不只內置了 ORM、表單、模板引擎、用戶系統等,並且第三方應用的生態也是十分完善,開發中大部分常見的功能都能找到對應的第三方實現。在這裏給你們推薦 10 個十分優秀的 Django 第三方庫(GitHub 星星數基本都在 1000 以上,並且都在持續維護與更新中)。雖然這些庫很適合用於社交網站的開發,但也有很大一部分是通用的,能夠用於任何用 Django 開發的項目。使用這些庫將大大提升開發效率和生產力。python

django-model-utils

簡介:Django model mixins and utilities.git

GitHub 地址:github.com/jazzband/dj…github

文檔地址:django-model-utils.readthedocs.io/en/latest/web

點評:加強 Django 的 model 模塊。內置了一些通用的 model Mixin,例如 TimeStampedModel 爲模型提供一個建立時間和修改時間的字段,還有一些有用的 Field,幾乎每一個 Django 項目都能用得上。數據庫

django-allauth

簡介:Integrated set of Django applications addressing authentication, registration, account management as well as 3rd party (social) account authentication.django

GitHub 地址:github.com/pennersr/dj…微信

文檔地址:django-allauth.readthedocs.io/en/latest/數據結構

點評:加強 Django 內置的 django.contrib.auth 模塊,提供登陸、註冊、郵件驗證、找回密碼等一切用戶驗證相關的功能。另外還提供 OAuth 第三方登陸功能,例如國內的微博、微信登陸,國外的 GitHub、Google、facebook 登陸等,幾乎囊括了大部分熱門的第三方帳戶登陸。配置簡單,開箱即用。app

django-crispy-forms

簡介:The best way to have DRY Django forms. The app provides a tag and filter that lets you quickly render forms in a div format while providing an enormous amount of capability to configure and control the rendered HTML.

GitHub 地址:github.com/django-cris…

文檔地址:django-crispy-forms.rtfd.org/

點評:大大加強 Django 內置的表單功能,Django 內置的表單生成原生的 HTML 表單代碼還能夠,但爲其設置樣式是一個麻煩的事情。django-crispy-forms 幫助你使用一行代碼渲染一個 Bootstrap 樣式的表單,固然它還支持其它一些熱門的 CSS 框架樣式的渲染。

django-mptt

簡介:Utilities for implementing a modified pre-order traversal tree in django.

GitHub 地址:github.com/django-mptt…

文檔地址:django-mptt.readthedocs.io/

點評:配合 Django 的 ORM 系統,爲數據庫的記錄生成樹形結構,並提供便捷的操做樹型記錄的 API。例如可使用它實現一個多級的評論系統。總之,只要你的數據結構可能須要使用樹來表示,django-mptt 將大大提升你的開發效率。

django-contrib-comments

簡介:Django used to include a comments framework; since Django 1.6 it's been separated to a separate project. This is that project.

This framework can be used to attach comments to any model, so you can use it for comments on blog entries, photos, book chapters, or anything else.

GitHub 地址:github.com/django/djan…

文檔地址:django-contrib-comments.readthedocs.io/

點評:用於提供評論功能,最早集成在 django 的 contrib 內置庫裏,後來被移出來單獨維護(可能以爲評論並不是是一個通用的庫吧)。這個評論庫提供了基本的評論功能,可是隻支持單級評論。好在這個庫具備很好的拓展性,基於上邊提到的 django-mptt,就能夠構建一個支持層級評論的評論庫,就像 個人博客評論區 中展現的這樣(我的博客的評論模塊就是基於 django-contrib-comments 和 django-mptt 寫的)。

django-imagekit

簡介:Automated image processing for Django.

GitHub 地址:github.com/matthewwith…

文檔地址:django-imagekit.rtfd.org/

點評:社交類網站免不了處理一些圖片,例如頭像、用戶上傳的圖片等內容。django-imagekit 幫你配合 django 的 model 模塊自動完成圖片的裁剪、壓縮、生成縮略圖等一系列圖片相關的操做。

django-brace

簡介:Reusable, generic mixins for Django

GitHub 地址:github.com/brack3t/dja…

文檔地址:django-braces.readthedocs.io/en/latest/i…

點評:django 內置的 class based view 很 awesome,但還有一些通用的類視圖沒有包含在 django 源碼中,這個庫補充了更多經常使用的類視圖。類視圖是 django 的一個很重要也很優雅的特性,使用類視圖能夠減小視圖函數的代碼編寫量、提升視圖函數的代碼複用性等。深刻學習類視圖能夠看Django類視圖源碼分析

django-notifications-hq

簡介:GitHub notifications alike app for Django

GitHub 地址:github.com/django-noti…

文檔地址:pypi.python.org/pypi/django…

點評:沒什麼好說的,爲你的網站提供相似於 GitHub 這樣的通知功能。未讀通知數、通知列表、標爲已讀等等。

django-simple-captcha

簡介:Django Simple Captcha is an extremely simple, yet highly customizable Django application to add captcha images to any Django form.

GitHub 地址:github.com/mbi/django-…

文檔地址:django-simple-captcha.readthedocs.io/en/latest/

點評:配合 django 的表單模塊,方便地爲表單添加一個驗證碼字段。對驗證性要求不高的需求,例如註冊表單防止機器人自動註冊等使用起來很是方便。

django-anymail

簡介:Django email backends and webhooks for Mailgun, Mailjet, Postmark, SendGrid, SparkPost and more

GitHub 地址:github.com/anymail/dja…

文檔地址:anymail.readthedocs.io/

點評:配合 django 的 email 模塊,只需簡單配置,就可使用 Mailgun、SendGrid 等發送郵件。

django-activity-stream

簡介:Generate generic activity streams from the actions on your site. Users can follow any actors' activities for personalized streams.

GitHub 地址:github.com/justquick/d…

文檔地址:django-activity-stream.rtfd.io/en/latest/

點評:社交類網站免不了關注、收藏、點贊、用戶動態等功能,這一個 app 全搞定。甚至用它實現一個朋友圈也不是不可能。

相關文章
相關標籤/搜索