gpt4 book ai didi

Grails Controller 传递参数

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

我的 Controller 如下:

def participated = {
def temp = ConferenceUser.get(params.temp)

def prizes = Prizes.findAllByConferenceUser(temp) // find all rooms where current computer is
def subms = Submissions.findAllByConferenceUser(temp) // find all rooms where current computer is

[temp: temp, priz: prizes, subm: subms]
}

但不知何故,当我成功更新 session 值时,我想返回到初始页面(已参与),但我不知道如何传回params.temp。 (如果我做一个简单的重定向,因为 Controller 需要 params.temp,它会给我一个错误,因为我无法使用空对象作为参数搜索奖品。所以,想象我的更新 Controller 是以下:

def update = {
def saveParamshere = params.temp
...
...
(code here)
...
...

redirect(action: "participated", params: [temp: saveParamshere])
}

该代码不起作用。如何成功返回主页并传入 params.temp

最佳答案

我认为问题可能是,您正在通过提交表单来调用 update 操作(我想)。也许您没有从该表单传递 temp 值?您可以通过将 temp 作为隐藏输入字段嵌入到表单中来实现此目的,或者通过表单标记上的 param 属性将其应用到 url。

使用隐藏字段可能是这样的(在您的 View 文件中):

<g:form controller="somecontroller" action="update">
(...)
<g:hiddenField name="temp" value="${temp}" />
(...)
</g:form>

使用params属性:

<g:form controller="somecontroller" action="update" params="[temp : temp]">
(...)
</g:form>

我没有测试任何这些,所以可能存在一些问题,特别是在第二种方法中。

关于Grails Controller 传递参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6145129/

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