gpt4 book ai didi

java - 如何在脚手架 View 中隐藏字段,但在 Grails 中添加新行时仍然强制执行它?

转载 作者:行者123 更新时间:2023-12-02 10:23:51 25 4
gpt4 key购买 nike

我有一个简单的 Grails 应用程序,我想在通用脚手架 View 中隐藏一些列,防止用户编辑它们,但在添加新项目时仍然强制指定它们。我查看了可能的限制,但看起来没有一个完全符合要求:

  • column display: false 从 View 中隐藏该列,但在任何地方都隐藏它,包括添加 View 的新项目
  • column editable: false 确实会阻止在编辑 View 中编辑该列,但您在添加新项目时也无法定义它(+它根本不隐藏)

那我该怎么解决呢?我仍然希望能够利用动态脚手架功能,但似乎无法指定该列不显示在一般 View 中,但在添加新内容时仍然强制执行它。有什么方法可以指定将其隐藏在哪个 View 中,而不是全有或全无?

最佳答案

假设我们有以下域:

class Thing {
String userName
String firstName
Integer userId

static constraints = {}
}

并且我们不希望用户名在编辑 View 上可编辑,您创建以下目录...

\views\thing\edit\userName

然后将名为 _widget.gsp 的文件添加到上面的目录,其中包含以下内容...

${value}

这将仅显示用户名的文本值。

至于索引 View ,我不是100%能轻易隐藏字段。我知道字段插件将根据域类定义中的顺序呈现表中的前 7 个字段。因此,如果您有 > 7 个字段,您可以以 > 7 的顺序给出您想要隐藏的字段,显然这里存在巨大的限制,您甚至可能没有 8 个字段,或者您可能想要隐藏多个字段...

您可以对 ListView 执行上述操作,但创建一个名为 \views\thing\index\userName 的目录,然后创建一个名为 _displayWidget.gsp 的文件,其中不包含任何内容它或者可能是“隐藏”之类的一些文本,这仍然会呈现该列,但不会显示任何值或您添加到文件中的任何文本,同样不太好。

关于java - 如何在脚手架 View 中隐藏字段,但在 Grails 中添加新行时仍然强制执行它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54126287/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com