讓專案可安裝

讓你的專案可安裝意味著你可以建立一個 wheel 檔案,並將其安裝到另一個環境中,就像你將 Flask 安裝到你的專案環境中一樣。這使得部署你的專案與安裝任何其他函式庫相同,因此你正在使用所有標準的 Python 工具來管理一切。

安裝還帶來了其他好處,這些好處可能從本教學或作為 Python 新手的角度來看不明顯,包括

  • 目前,Python 和 Flask 知道如何使用 flaskr 套件,僅僅因為你正在從你的專案目錄中執行。安裝意味著無論你從哪裡執行,你都可以匯入它。

  • 你可以像其他套件一樣管理你的專案的依賴項,因此 pip install yourproject.whl 會安裝它們。

  • 測試工具可以將你的測試環境與你的開發環境隔離。

注意

這是在本教學的後期才介紹的,但在你未來的專案中,你應該始終從此開始。

描述專案

pyproject.toml 檔案描述你的專案以及如何建置它。

pyproject.toml
[project]
name = "flaskr"
version = "1.0.0"
description = "The basic blog app built in the Flask tutorial."
dependencies = [
    "flask",
]

[build-system]
requires = ["flit_core<4"]
build-backend = "flit_core.buildapi"

請參閱官方的 封裝教學 以獲得關於所使用檔案和選項的更多說明。

安裝專案

使用 pip 在虛擬環境中安裝你的專案。

$ pip install -e .

這告訴 pip 在目前目錄中尋找 pyproject.toml 並以可編輯開發模式安裝專案。可編輯模式意味著當你對你的本地程式碼進行更改時,你只需要在更改關於專案的中繼資料(例如其依賴項)時才需要重新安裝。

你可以透過 pip list 觀察到專案現在已安裝。

$ pip list

Package        Version   Location
-------------- --------- ----------------------------------
click          6.7
Flask          1.0
flaskr         1.0.0     /home/user/Projects/flask-tutorial
itsdangerous   0.24
Jinja2         2.10
MarkupSafe     1.0
pip            9.0.3
Werkzeug       0.14.1

從你目前為止執行專案的方式來看,沒有任何改變。--app 仍然設定為 flaskr,而 flask run 仍然執行應用程式,但你可以從任何地方呼叫它,而不僅僅是 flask-tutorial 目錄。

繼續前往 測試覆蓋率