项目可安装化

    可安装化还可以带来如下好处,这些好处在教程中可以不太明显或者初学者可能没 注意到:

    • 现在, Python 和 Flask 能够理解如何 包,是因为你是在项目 文件夹中运行的。可安装化后,可以从任何地方导入项目并运行。

    • 测试工具可以分离测试环境和开发环境。

    Note

    setup.py 文件描述项目及其从属的文件。

    setup.py

    packages 告诉 Python 包所包括的文件夹(及其所包含的 Python 文件)。 find_packages() 自动找到这些文件夹,这样就不用手动写出来。 为了包含其他文件夹,如静态文件和模板文件所在的文件夹,需要设置 。 Python 还需要一个名为 MANIFEST.in 文件来说明这些文件有哪些。

    MANIFEST.in

    这告诉 Python 复制所有 statictemplates 文件夹中的文件, schema.sql 文件,但是排除所有字节文件。

    安装项目

    使用 在虚拟环境中安装项目。

    这个命令告诉 pip 在当前文件夹中寻找 setup.py 并在 编辑开发 模式下安装。编辑模式是指当改变本地代码后,只需要重新项目。比如改变了项目 依赖之类的元数据的情况下。

    可以通过 pip list 来查看项目的安装情况。

    至此,没有改变项目运行的方式, FLASK_APP 还是被设置为 flaskr , 还是使用 flask run 运行应用。不同的是可以在任何地方运行应用,而不仅仅 是在 目录下。

    下面请阅读 。