Cookiecutter 模板依赖管理

问题描述 投票:0回答:1

我正在开发一个 cookiecutter 模板。我的模板有一些依赖项。例如,在

hooks/post_gen_project.py
中,我想使用
rich.print
显示一条消息。怎样才能满足这样的要求呢?

此外,我见过许多 cookiecutter 模板,其根目录中包含

setup.py
pyproject.toml
setup.cfg
文件。这有什么意义?起初,我认为这可能是向我的模板添加依赖项的一种方法,但这不起作用,并且想知道其背后的整个想法。 不幸的是,cookiecutter 的文档描述所有这些概念和细节都很薄弱!

谢谢。

python templates jinja2 dependency-management cookiecutter
1个回答
0
投票

一种做法是在

pre_gen_project.py
挂钩文件中安装依赖项。

try:
    import rich
except ModuleNotFoundError:
    import subprocess

    subprocess.run(
        [
            "pip",
            "install",
            "--disable-pip-version-check",
            "--no-python-version-warning",
            "-q",
            "rich",
        ]
    )

这样,在

post_gen_project
被触发之前,它会安装
rich
,这样我就可以在
rich.print
中使用
post_gen_project.py
,没有任何问题。

© www.soinside.com 2019 - 2024. All rights reserved.