如何在grails中进行if循环?

如何在grails中进行if循环?,grails,if-statement,Grails,If Statement,我是Grails的初学者,请帮忙。我的普惠制里有这个 <div class="right66"> <g:select class="time_pick" name="pick_day" placeholder="" from="${['Dani', 'Sati', 'Minute']}" valueMessagePrefix="book.category"/> </div> 但是我怎么称呼这个选择的输入为“D

我是Grails的初学者,请帮忙。我的普惠制里有这个

<div class="right66">                       
  <g:select class="time_pick" name="pick_day" placeholder="" from="${['Dani', 'Sati', 'Minute']}" valueMessagePrefix="book.category"/>
</div>

但是我怎么称呼这个选择的输入为“Dani”?我不能写Params.type=Dani。在我的例子中,if循环是否进入控制器?

控制器中的groovy解决方案

你可以使用下面的循环,但是当你结束循环时,你必须减少或增加n的值到一个结束值,比如说1。高达(n)意味着1…100,但是每次iu改变它的值,并且在某个地方

List types = [] 
types = params?.type
def分钟=0

1.upto(n) {
if(types[i]=='Dani'){
n=3600
}
else if(types[i]=='Sati') {
n=60
}
minute = params?.minute*n    
}

如果需要将输入转换为分钟,则应在控制器或服务中执行此操作。这里的
if
与Java或Groovy中的相同。视图中的输入将位于控制器中的
params
对象中,其名称与输入的id相同

def minutes = params.input
if (params.pick_day in ['Sati', 'Dani']) {
    minutes *= 60
    if (params.pick_day == 'Dani') {
        minutes *= 24
    }
}

我还有一个问题:如何在我的数据库中定义g:select?我应该使用什么数据类型?我不确定你在问什么,但是如果你想存储select的值,你可能想使用枚举。
def minutes = params.input
if (params.pick_day in ['Sati', 'Dani']) {
    minutes *= 60
    if (params.pick_day == 'Dani') {
        minutes *= 24
    }
}