From 8e25a2549be3fb9d5c66b049ae7f6255a005dbd1 Mon Sep 17 00:00:00 2001 From: zhangtao <9480807882@qq.com> Date: Mon, 24 Nov 2025 20:56:11 +0800 Subject: [PATCH] =?UTF-8?q?refactor(cli):=20=E5=B0=86=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=A3=B0=E6=98=8E=E4=BB=8EArgument=E6=94=B9=E4=B8=BAOption?= =?UTF-8?q?=E4=BB=A5=E4=BF=9D=E6=8C=81=E4=B8=80=E8=87=B4=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改revision和upgrade命令的环境参数声明方式,从typer.Argument改为typer.Option,与run命令保持一致 --- backend/main.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/backend/main.py b/backend/main.py index 601107b9..0d280ad4 100755 --- a/backend/main.py +++ b/backend/main.py @@ -47,8 +47,9 @@ def create_app() -> FastAPI: return app +# typer.Option是非必填;typer.Argument是必填 @fastapiadmin_cli.command(name="run", help="启动 FastapiAdmin 服务, 运行 python main.py run --env=dev 不加参数默认 dev 环境") -def run(env: Annotated[EnvironmentEnum, typer.Option(EnvironmentEnum.DEV, "--env", help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: +def run(env: Annotated[EnvironmentEnum, typer.Option("--env", help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: """启动FastAPI服务""" try: @@ -84,14 +85,14 @@ def run(env: Annotated[EnvironmentEnum, typer.Option(EnvironmentEnum.DEV, "--env raise @fastapiadmin_cli.command(name="revision", help="生成新的 Alembic 迁移脚本, 运行 python main.py revision --env=dev") -def revision(env: Annotated[EnvironmentEnum, typer.Argument(help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: +def revision(env: Annotated[EnvironmentEnum, typer.Option("--env", help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: """生成新的 Alembic 迁移脚本""" os.environ["ENVIRONMENT"] = env.value command.revision(alembic_cfg, autogenerate=True, message="迁移脚本") typer.echo(f"迁移脚本已生成") @fastapiadmin_cli.command(name="upgrade", help="应用最新的 Alembic 迁移, 运行 python main.py upgrade --env=dev") -def upgrade(env: Annotated[EnvironmentEnum, typer.Argument(help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: +def upgrade(env: Annotated[EnvironmentEnum, typer.Option("--env", help="运行环境 (dev, prod)")] = EnvironmentEnum.DEV) -> None: """应用最新的 Alembic 迁移""" os.environ["ENVIRONMENT"] = env.value command.upgrade(alembic_cfg, "head")