命令指南

欢迎使用 Finch 命令指南!本指南将引导您完成在 Finch 应用程序中使用命令的步骤。无论您是经验丰富的开发人员还是刚刚起步,Finch 都提供了一套强大的工具来简化服务器端 Web 应用程序开发。

添加自定义命令

您可以向 Finch 应用程序添加自定义命令。这些命令可用于执行各种任务,例如数据库迁移、语言管理等。要添加自定义命令,您需要使用 addCommand 方法。以下是使用示例:

app.commands.add(
  CappController('example', options: [
    CappOption(
      name: 'test',
      shortName: 't',
      description: 'An example option',
    ),
  ], run: (c) async {
    if (c.existsOption('test')) {
      CappConsole.writeTable(
        [
          ['Column 1', 'Column 2', 'Column 3'],
          ...List.filled(5, ['Data 1', 'Data 2', 'Data 3'])
        ],
        dubleBorder: true,
        color: CappColors.warning,
      );
    }

    return CappConsole(
      'This is an example command from Finch App! Time: ${DateTime.now()}',
      CappColors.success,
    );
  }),
);

注意:

Capp 是一个包,提供了一种简单的方法来管理应用程序中的命令。您可以使用此包向应用程序添加命令。有关更多信息,请参阅 Capp 包。

启动服务器后运行命令

您可以在启动服务器后运行命令。例如,您可以在启动服务器后运行数据库迁移命令。为此,您需要使用 runCommand 方法。以下是使用示例:

dart run example/lib/app.dart example --test

在此示例中,example 是命令的名称,--test 是我们要传递给命令的选项。

注意:您必须将 main 函数的参数传递给 runCommand 方法。例如,如果您的 main 函数中有 --port 选项,则必须将此选项传递给 runCommand 方法。例如:

/// app.dart

final app = FinchApp(configs: configs);

void main([List<String>? args]) async {
   ...
   app.start(args);
}