gpt4 book ai didi

grails - 限制某些域类项目的选择

转载 作者:行者123 更新时间:2023-12-02 15:50:08 26 4
gpt4 key购买 nike

我的域类的简化如下所示:

class ScheduleTimeExp{
Data date
}

class ScheduleAction{
ScheduleTimeExp scheduleTimeExp
}

我的gsp中有一个选择框:
<g:select id="scheduleTimeExp" name="scheduleTimeExp.id" from="${tao.marketing.ScheduleTimeExp.list()}" optionKey="id" required="" value="${tao.marketing.ScheduleAction?.scheduleTimeExp?.id}" class="many-to-one"/>

而是让用户从所有ScheduleTimeExp中选择
from="${tao.marketing.ScheduleTimeExp.list()}"

我只想显示那些其他任何ScheduleAction都不存在ScheduleTimeExp和ScheduleAction之间的关系的ScheduleTimeExp。换句话说,只有那些尚未在另一个ScheduleAction中选择的时间表达式。

最佳答案

为了从表示分离中强制执行逻辑,您想在 Controller Action 中填充列表:

def dataSource

def someAction() {
final Sql sql = new Sql( dataSource )
def scheduleTimeExps = sql.rows( 'select ste.id, ste.date from Schedule_Time_Exp ste where ste.id not in (select sa.Schedule_Time_Exp_id from Schedule_Action sa)' ).collect{ it as ScheduleTimeExp }
[ ..., scheduleTimeExps:scheduleTimeExps ]
}

注意:确保表和列的大小写和命名正确

然后在gsp中:
<g:select .. from="${scheduleTimeExps}"/>

关于grails - 限制某些域类项目的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40495748/

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