跳转到主要内容

Click命令加载器,允许从指定的文件夹加载Click命令。

项目描述

Click命令加载器(CCL)

Click Command Loader

Click命令加载器(简称CCL)是Click的一个附加包,用于从文件夹加载Click命令。

例如,以下文件夹结构

my_project/
├─ commands/
│  ├─ create.py
│  ├─ delete.py
│  ├─ list.py
├─ __init__.py

命令 createdeletelist 将被注册到您的Click应用中!

安装

这是一个可在PyPi上找到的包!

使用Pip

pip install clickloader

使用Poetry

poetry add clickloader

示例

假设您有以下命令结构

my_project/
├─ commands/
│  ├─ create.py
│  ├─ delete.py
│  ├─ list.py
├─ cli.py

在您的 cli.py 中,您应该有您的CLI应用的基逻辑。最初,所有命令都会在这里注册,但CCL将帮助您利用这里的工作。

以下是cli.py的内容

import click
import ccl
import pathlib


path_to_commands = pathlib.Path(__file__, "..", "commands")

my_cli = click.Group("MyCLI")
ccl.register_commands(my_cli, path_to_commands)

if __name__ == "__main__":
    my_cli()

voilà!您的“commands”文件夹中的所有命令都已注册!

幕后

在注册命令时,CCL将执行以下操作

  1. 列出给定源内的文件和文件夹。

  2. 遍历目录,如果找到文件,跳转到步骤3,如果找到文件夹,跳转到步骤2.1。

    2.1. 如果是文件夹,检查是否存在__init__.py文件,如果存在,尝试导出一个包含click装饰器的函数(必须是一个组)。如果未找到,创建一个click组,然后使用指定的组继续到步骤3。

  3. 如果找到文件,尝试导出一个包含click装饰器的函数(必须是一个命令),然后将其添加到指定的组。

  4. 继续扫描,直到所有文件和文件夹都被扫描完毕。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分布

clickloader-0.2.0.tar.gz (4.2 kB 查看哈希)

上传时间 源代码

构建分布

clickloader-0.2.0-py3-none-any.whl (4.9 kB 查看哈希)

上传时间 Python 3

支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面