(快速参考)

Grails generate-controller 命令

目的

Grails 中 generate-controller 命令的目的是为指定的域类创建一个控制器及其相关的单元测试。

示例

以下是一些 generate-controller 命令的使用示例

  1. 为特定的域类(比如 org.bookstore.Book)生成一个控制器和单元测试

    ./gradlew runCommand -Pargs="generate-controller org.bookstore.Book"
  2. 使用通配符(*)为所有域类生成控制器和单元测试

    ./gradlew runCommand -Pargs="generate-controller *"
  3. 交互式生成控制器和单元测试,允许用户指定域类名称

    ./gradlew runCommand -Pargs="generate-controller"

说明

Grails 提供了一项称为静态脚手架的功能,它可以简化针对给定域类创建 CRUD(创建/读取/更新/删除)界面的过程。此界面通常包括负责处理 HTTP 请求和执行 CRUD 操作的控制器。但是,需要注意的是,一旦生成了这些工件,当对基础域类进行更改时,它们不会自动更新。

通过仅生成为指定域类实现 CRUD 功能所需的控制器(及其相关的单元测试),generate-controller 命令解决了此问题。您可以将域类名称作为参数提供。如果您省略参数,该命令将交互式提示您输入您要进行脚手架的域类的名称。

例如,如果您的域类是 org.bookstore.Book,执行 generate-controller 命令将创建以下文件

  • 控制器:BookController.groovy

  • 相关单元测试:BookControllerSpec.groovy

这些文件将放置在 Grails 项目中相应的目录中。

用法

./gradlew runCommand -Pargs="generate-controller <<domain class name>>"

参数

generate-controller 命令接受以下参数

  • 领域类名称 - 指定要为其生成控制器和单元测试的领域类的名称。该参数区分大小写。此外,您可以使用通配符(*)作为参数,为 Grails 应用程序中所有领域类生成控制器和单元测试。

标志

命令支持以下标志

  • force - 确定命令是否应该覆盖现有文件。启用此标志时,如有必要,现有的控制器和单元测试文件将被新生成的文件替换。

通过有效利用 generate-controller 命令,Grails 开发人员可以有效地创建针对特定领域类或为应用程序中所有类生成针对这些类或所有类的控制器和单元测试。这允许更好地管理 CRUD 操作并根据需要自定义控制器行为。