欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
5 個(gè)最受人喜愛(ài)的開(kāi)源 Django 包

Django 圍繞“可重用應用[1]”的思想建立:自包含的包提供了可重復使用的特性。你可以將這些可重用應用組裝起來(lái),在加上適用于你的網(wǎng)站的特定代碼,來(lái)搭建你自己的網(wǎng)站。Django 具有一個(gè)豐富多樣的、由可供你使用的可重用應用組建起來(lái)的生態(tài)系統——PyPI 列出了超過(guò) 8000個(gè) Django 應用[2]——可你該如何知道哪些是最好的呢?

為了節省你的時(shí)間,我們總結了五個(gè)最受喜愛(ài)的 Django 應用。它們是:

  • Cookiecutter[3]: 建立 Django 網(wǎng)站的最佳方式。
  • Whitenoise[4]: 最棒的靜態(tài)資源服務(wù)器。
  • Django Rest Framework[5]: 使用 Django 開(kāi)發(fā) REST API 的最佳方式。
  • Wagtail[6]: 基于 Django 的最佳內容管理系統(CMS)。
  • django-allauth[7]: 提供社交賬戶(hù)登錄的最佳應用(如 Twitter, Facebook, GitHub 等)。

我們同樣推薦你看看 Django Packages[8],這是一個(gè)可重用 Django 應用的目錄。Django Packages 將 Django 應用組織成“表格”,你可以在功能相似的不同應用之間進(jìn)行比較并做出選擇。你可以查看每個(gè)包中提供的特性和使用統計情況。(比如:這是 REST 工具的表格[9],也許可以幫助你理解我們?yōu)楹瓮扑] Django REST Framework。

為什么你應該相信我們?

我們使用 Django 的時(shí)間幾乎比任何人都長(cháng)。在 Django 發(fā)布之前,我們當中的兩個(gè)人(Frank 和 Jacob)就在 Lawrence Journal-World[10] (Django 的發(fā)源地)工作(事實(shí)上,是他們兩人推動(dòng)了 Django 開(kāi)源發(fā)布的進(jìn)程)。我們在過(guò)去的八年當中運行著(zhù)一個(gè)咨詢(xún)公司,來(lái)建議公司怎樣最好地應用 Django。

所以,我們見(jiàn)證了 Django 項目和社群的完整歷史,我們見(jiàn)證了那些流行的軟件包的興起和沒(méi)落。在我們三個(gè)之中,我們個(gè)人可能試用了 8000 個(gè)應用中至少一半以上,或者我們知道誰(shuí)試用過(guò)這些。我們對如何使應用變得堅實(shí)可靠有著(zhù)深刻的理解,并且我們對給予這些應用持久力量的來(lái)源也有著(zhù)深入的了解。

建立 Django 網(wǎng)站的最佳方式:Cookiecutter[11]

建立一個(gè)新項目或應用總是有些痛苦。你可以用 Django 內建的 startproject。不過(guò),如果你像我們一樣,對如何做事比較挑剔。Cookiecutter 為你提供了一個(gè)快捷簡(jiǎn)單的方式來(lái)構建項目或易于重用的應用模板,從而解決了這個(gè)問(wèn)題。一個(gè)簡(jiǎn)單的例子:鍵入 pip install cookiecutter,然后在命令行中運行以下命令:

$ cookiecutter https://github.com/marcofucci/cookiecutter-simple-django

接下來(lái)你需要回答幾個(gè)簡(jiǎn)單的問(wèn)題,比如你的項目名稱(chēng)、目錄repo、作者名字、E-Mail 和其他幾個(gè)關(guān)于配置的小問(wèn)題。這些能夠幫你補充項目相關(guān)的細節。我們使用最最原始的 “foo” 作為我們的目錄名稱(chēng)。所以 cokkiecutter 在子目錄 “foo” 下建立了一個(gè)簡(jiǎn)單的 Django 項目。

如果你在 “foo” 項目中閑逛,你會(huì )看見(jiàn)你剛剛選擇的其它設置已通過(guò)模板,連同所需的子目錄一同嵌入到文件當中。這個(gè)“模板”在我們剛剛在執行 cookiecutter 命令時(shí)輸入的唯一一個(gè)參數 Github 倉庫 URL 中定義。這個(gè)樣例工程使用了一個(gè) Github 遠程倉庫作為模板;不過(guò)你也可以使用本地的模板,這在建立非重用項目時(shí)非常有用。

我們認為 cookiecutter 是一個(gè)極棒的 Django 包,但是,事實(shí)上其實(shí)它在面對純 Python 甚至非 Python 相關(guān)需求時(shí)也極為有用。你能夠將所有文件以一種可重復的方式精確地擺放在任何位置上,使得 cookiecutter 成為了一個(gè)簡(jiǎn)化(DRY)工作流程的極佳工具。

最棒的靜態(tài)資源服務(wù)器:Whitenoise[12]

多年來(lái),托管網(wǎng)站的靜態(tài)資源——圖片、Javascript、CSS——都是一件很痛苦的事情。Django 內建的django.views.static.serve[13] 視圖,就像 Django 文章所述的那樣,“在生產(chǎn)環(huán)境中不可靠,所以只應為開(kāi)發(fā)環(huán)境的提供輔助功能?!钡褂靡粋€(gè)“真正的” Web 服務(wù)器,如 NGINX 或者借助 CDN 來(lái)托管媒體資源,配置起來(lái)會(huì )比較困難。

Whitenoice 很簡(jiǎn)潔地解決了這個(gè)問(wèn)題。它可以像在開(kāi)發(fā)環(huán)境那樣輕易地在生產(chǎn)環(huán)境中設置靜態(tài)服務(wù)器,并且針對生產(chǎn)環(huán)境進(jìn)行了加固和優(yōu)化。它的設置方法極為簡(jiǎn)單:

  1. 確保你在使用 Django 的 contrib.staticfiles[14] 應用,并確認你在配置文件中正確設置了 STATIC_ROOT 變量。

  2. 在 wsgi.py 文件中啟用 Whitenoise:

    from django.core.wsgi import get_wsgi_applicationfrom whitenoise.django import DjangoWhiteNoiseapplication = get_wsgi_application()application = DjangoWhiteNoise(application)

配置它真的就這么簡(jiǎn)單!對于大型應用,你可能想要使用一個(gè)專(zhuān)用的媒體服務(wù)器和/或一個(gè) CDN,但對于大多數小型或中型 Django 網(wǎng)站,Whitenoise 已經(jīng)足夠強大。

如需查看更多關(guān)于 Whitenoise 的信息,請查看文檔[15]。

開(kāi)發(fā) REST API 的最佳工具:Django REST Framework[16]

REST API 正在迅速成為現代 Web 應用的標準功能。 API 就是簡(jiǎn)單的使用 JSON 對話(huà)而不是 HTML,當然你可以只用 Django 做到這些。你可以制作自己的視圖,設置合適的 Content-Type,然后返回 JSON 而不是渲染后的 HTML 響應。這是在像 Django Rest Framework[17](下稱(chēng) DRF)這樣的 API 框架發(fā)布之前,大多數人所做的。

如果你對 Django 的視圖類(lèi)很熟悉,你會(huì )覺(jué)得使用 DRF 構建 REST API 與使用它們很相似,不過(guò) DRF 只針對特定 API 使用場(chǎng)景而設計。一般的 API 設置只需要一點(diǎn)代碼,所以我們沒(méi)有提供一份讓你興奮的示例代碼,而是強調了一些可以讓你生活的更舒適的 DRF 特性:

  • 可自動(dòng)預覽的 API 可以使你的開(kāi)發(fā)和人工測試輕而易舉。你可以查看 DRF 的示例代碼[18]。你可以查看 API 響應,并且不需要你做任何事就可以支持 POST/PUT/DELETE 類(lèi)型的操作。
  • 便于集成各種認證方式,如 OAuth, Basic Auth, 或API Tokens。
  • 內建請求速率限制。
  • 當與 django-rest-swagger[19] 組合使用時(shí),API 文檔幾乎可以自動(dòng)生成。
  • 廣泛的第三方庫生態(tài)。

當然,你可以不依賴(lài) DRF 來(lái)構建 API,但我們無(wú)法想象你不去使用 DRF 的原因。就算你不使用 DRF 的全部特性,使用一個(gè)成熟的視圖庫來(lái)構建你自己的 API 也會(huì )使你的 API 更加一致、完全,更能提高你的開(kāi)發(fā)速度。如果你還沒(méi)有開(kāi)始使用 DRF, 你應該找點(diǎn)時(shí)間去體驗一下。

基于 Django 的最佳 CMS:Wagtail[20]

Wagtail 是當下 Django CMS(內容管理系統)世界中最受人青睞的應用,并且它的熱門(mén)有足夠的理由。就像大多數的 CMS 一樣,它具有極佳的靈活性,可以通過(guò)簡(jiǎn)單的 Django 模型來(lái)定義不同類(lèi)型的頁(yè)面及其內容。使用它,你可以從零開(kāi)始在幾個(gè)小時(shí)而不是幾天之內來(lái)和建造一個(gè)基本可以運行的內容管理系統。舉一個(gè)小例子,為你公司的員工定義一個(gè)員工頁(yè)面類(lèi)型可以像下面一樣簡(jiǎn)單:

from wagtail.wagtailcore.models import Pagefrom wagtail.wagtailcore.fields import RichTextFieldfrom wagtail.wagtailadmin.edit_handlers import FieldPanel, MultiFieldPanelfrom wagtail.wagtailimages.edit_handlers import ImageChooserPanel class StaffPage(Page):    name = models.CharField(max_length=100)    hire_date = models.DateField()    bio = models.RichTextField()    email = models.EmailField()    headshot = models.ForeignKey('wagtailimages.Image', null=True, blank=True)     content_panels = Page.content_panels + [                                FieldPanel('name'),                                FieldPanel('hire_date'),                                FieldPanel('email'),                                FieldPanel('bio',classname="full"),                                ImageChoosePanel('headshot'),                                ] 

然而,Wagtail 真正出彩的地方在于它的靈活性及其易于使用的現代化管理頁(yè)面。你可以控制不同類(lèi)型的頁(yè)面在哪網(wǎng)站的哪些區域可以訪(fǎng)問(wèn),為頁(yè)面添加復雜的附加邏輯,還天生就支持標準的適應/審批工作流。在大多數 CMS 系統中,你會(huì )在開(kāi)發(fā)時(shí)在某些點(diǎn)上遇到困難。而使用 Wagtail 時(shí),我們經(jīng)過(guò)不懈努力找到了一個(gè)突破口,使得讓我們輕易地開(kāi)發(fā)出一套簡(jiǎn)潔穩定的系統,使得程序完全依照我們的想法運行。如果你對此感興趣,我們寫(xiě)了一篇[深入理解 Wagtail][17。

提供社交賬戶(hù)登錄的最佳工具:django-allauth[21]

django-allauth 是一個(gè)能夠解決你的注冊和認證需求的、可重用的 Django 應用。無(wú)論你需要構建本地注冊系統還是社交賬戶(hù)注冊系統,django-allauth 都能夠幫你做到。

這個(gè)應用支持多種認證體系,比如用戶(hù)名或電子郵件。一旦用戶(hù)注冊成功,它還可以提供從無(wú)需認證到電子郵件認證的多種賬戶(hù)驗證的策略。同時(shí),它也支持多種社交賬戶(hù)和電子郵件賬戶(hù)。它還支持插拔式注冊表單,可讓用戶(hù)在注冊時(shí)回答一些附加問(wèn)題。

django-allauth 支持多于 20 種認證提供者,包括 Facebook、Github、Google 和 Twitter。如果你發(fā)現了一個(gè)它不支持的社交網(wǎng)站,很有可能通過(guò)第三方插件提供該網(wǎng)站的接入支持。這個(gè)項目還支持自定義后端,可以支持自定義的認證方式,對每個(gè)有定制認證需求的人來(lái)說(shuō)這都很棒。

django-allauth 易于配置,且有完善的文檔[22]。該項目通過(guò)了很多測試,所以你可以相信它的所有部件都會(huì )正常運作。

你有最喜愛(ài)的 Django 包嗎?請在評論中告訴我們。

 

閱讀原文

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
談?wù)刢ookiecutter-django生成的項目目錄結構的優(yōu)點(diǎn)
值得關(guān)注的5個(gè)Python開(kāi)源項目
03 認識Django REST framework
用python搭建一個(gè)校園維基網(wǎng)站(二)—— 可編輯內容的首頁(yè)的創(chuàng )建
wagtail-基于Django構建的開(kāi)源內容管理系統
探索drf執行流程之APIView源碼分析
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久