1. 程式人生 > >django教程8--如何編寫可重用程式

django教程8--如何編寫可重用程式

的專案中重用它或將它與他人分享。

如果你尚未完成教程 1-7,我們推薦你先瀏覽一遍教程,這樣你的樣例工程會和下面的一致。

可重用性很重要

設計,構建,測試以及維護一個 web 應用要做很多的工作。很多 Python 以及 Django 專案都有一些常見問題。如果我們能儲存並利用這些重複的工作豈不是更好?

可重用性是Python的生存方式。 Python軟體包索引(PyPI) 有很多可以在你自己的Python程式中使用的軟體包。檢視 Django Packages 以瞭解您可以整合到專案中的現有可重用應用。Django本身也只是一個Python包。這意味著您可以將現有的Python包或Django應用組合到您自己的Web專案中。您只需編寫您專案獨一無二的部分。

假設你現在建立了一個新的專案,並且需要一個類似我們之前做的投票應用。你該如何複用這個應用呢?慶幸的是,其實你已經知道了一些。在 教程 3,我們使用過 include 從專案級別的 URLconf 分割出 polls。在本教程中,我們將進一步使這個應用易用於新的專案中,併發布給其他人安裝使用。

包?應用?

一個 package 提供了一組關聯的 Python 程式碼的簡單複用方式。一個包(“模組”)包含了一個或多個 Python 程式碼檔案。

一個包通過 import foo.bar 或 from foo import bar 的形式匯入。一個目錄(例如 polls)要成為一個包,它必須包含一個特定的檔案 __init__.py

,即便這個檔案是空的。

Django 應用 僅僅是專用於 Django 專案的 Python 包。應用會按照 Django 約定,建立好 modelstests,urls, 以及 views 等子模組。

稍後,我們將解釋術語 打包 ——為了方便其它人安裝 Python 包的處理流程。我知道,這可能會使你感到一點點迷惑。