如何节省桌面grails的价值?

时间:2013-09-03 03:15:50

标签: forms grails params

我的形象.. http://www.4shared.com/photo/Rj_0Ymdt/1111.html 这是我在控制器中的编码

def simpan(){
def banklimit = new BankLimit()
    for(int i = 0; i<params.limitPerDay.size();i++) {
        def baaa = CurrencyList.list(params)
        banklimit.dayLimit = params.limitPerDay[i].toBigDecimal()
        banklimit.alertLimit = (banklimit.dayLimit*0.8)     
        banklimit.currency = CurrencyList.findBySym(baaa.sym[i])
        banklimit.save()
    }
    return banklimit
}

<table>
            <thead>
                <tr>                        
                        <g:sortableColumn property="sym" title="${message(code: 'banklimit.currency.sym.label', default: 'Simbol')}" />                     
                        <g:sortableColumn property="limitday" title="${message(code: 'banklimit.dayLimit.label', default: 'Limit/Day')}" />                     
                </tr>           
            </thead>
            <tbody>
            <g:each in="${aaa}" status="i" var="bbb">
                <tr class="${(i % 2) == 0 ? 'even' : 'odd'}">

                    <td id="${bbb.id}"> ${fieldValue(bean: bbb, field: "sym")}</td>
                    <td  id="${bbb.id}" colspan="2"> <g:textField name="limitPerDay" value="${value}" /></td>               
                </tr>

            </g:each>   
                <tr>
                    <td></td>
                    <td><g:submitButton name="save" value="SAVE" /> <g:actionSubmit action="back" value="BACK" /></td>
                </tr>           
            </tbody>
        </table>

如果我点击“保存”按钮,我想在coloum limit / day上保存该字段。 基于我的编码,当我点击保存时,只有最后一行保存在数据库中... 例如:theres 4行.. 第1,2,3,4行填充,然后我点击保存..为什么只有第4行保存在数据库中?第1,2,3行没有保存?

1 个答案:

答案 0 :(得分:0)

您只有一个banklimit = new BankLimit()但保存了4次。它是一个对象在循环中用不同的值保存了4次。

你需要:

for(int i = 0; i<params.limitPerDay.size();i++) {
    def banklimit = new BankLimit()
    //.... fill with values
    banklimit.save()
}

对于客户端,最好是:

<g:each in="${aaa}" status="i" var="bbb">
    <tr class="${(i % 2) == 0 ? 'even' : 'odd'}">
        <td>${fieldValue(bean: bbb, field: "sym")}</td>
        <td colspan="2"><g:textField name="limitPerDay[${i}]" value="${value}" /></td>               
    </tr>
</g:each>
相关问题