gpt4 book ai didi

chalice /普惠制 : break out of

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

有没有办法突破 ?我有一个页面,其中我正在遍历一个列表,如果这是存储在数据库中的值,我必须确保选中一个复选框。

为了让它更清楚一点,请考虑如下内容:

<g:each in=${list1}>
<g:each in=${list2}>
<g:if test="${list1.id == list2.id}">
<input type="checkbox" ... checked="checked" />
</if>
</g:each>
...
</g:each>

其中 list1 是 Domain1.list()(即所有可能的值),list2 是 Domain2.find(...)(即选择的值)

在 g:each 中,我需要用复选框显示 list1 的所有内容(因此,内部每个之后的“...”),但我需要确保 list2 中的那些(用户选择的项目是保存到数据库)应该相应地检查(if 语句)。

现在,如果在第一次迭代时更改了检查状态,我需要退出内部 each...有什么方法可以做到这一点吗?

谢谢!

最佳答案

不,不是每个子句。

我只是写我自己的 taglib,它接受 list1 和 list2 并为你做迭代,返回到

<g:eachCheckedItem list1="${list1}" list2="${list2}">
<input type="checkbox" ... checked="checked"/>
</g:eachCheckedItem>

在你的 taglib 类中:

def eachCheckedItem = { attrs, body ->
def list1 = attrs.list1
def list2 = attrs.list2

list1.findAll { list2.contains(it) }.each {
out << body(listItem: it) // access to listItem variable inside gsp
}

}

类似的东西(针对您的特定问题进行调整)很容易编写,并且还可以相当多地清理您的 gsp 文件。我一直在我的标签库中使用这些类型的自定义迭代器。

关于 chalice /普惠制 : break out of <g:each>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3233969/

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