java - 无法将 ID 从 gsp 传递到 Controller

标签 java grails groovy

我想将 id="${training.id}"传递给组织 Controller ,并使用 Controller 内的 returned() 函数。但是当我传递它时,它向我显示 NULL 结果。(id )我打印的是NULL。

gsp文件

<g:each in="${trainingLists}" var="training">
    <div class="card">
        <div class="card-header">
            <h3>Organization Name:</h3>${training.organization.orgName}</div>
        <div class="card-body">
            <h3>Organization Description:</h3>${training.organization.orgDesc}</div>
        <div class="card-body">
          <h3>Training Available:</h3>${training.name}</div>
    <sec:ifNotLoggedIn>
        <g:link controller="organization" action="notconfirmed">Apply</g:link>
    </sec:ifNotLoggedIn>
        <sec:ifLoggedIn>
            <g:link action="confirmed" id="${training.id}">Apply</g:link>
        </sec:ifLoggedIn>
    </div>
    <br>
</g:each>

组织. Controller

def confirmed(){
        def id = params.id
        println(id)

    }

最佳答案

您的普惠制 <g:link>看起来不错。

请调试并检查是${training.id}有有效的ID。

<g:link controller="organization" action="confirmed" id="${training.id}">Apply</g:link>

仍然遇到问题,然后将临时硬编码 ID 进行检查 例如:

<g:link controller="organization" action="confirmed" id="2">Apply</g:link>

现在在地址栏中您将看到类似 localhost:8080/organization/confirmed/2 的 URL Controller println 也打印 2。

您可以查看documentation了解更多属性和选项

关于java - 无法将 ID 从 gsp 传递到 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49855362/

相关文章:

spring - 如何在 Grails 应用程序中选择服务实现?

jenkins - Jenkins 管道中的条件步骤/阶段

sorting - 如何对grails对象的persistentSet进行排序?

java - 在单例类中添加两个整数值

Java:将 TRUE/FALSE 的所有可能组合添加到列表中

java - 使用 java 运行 jython 字节码

grails - Grails中最好的迁移插件?

grails - grails create-plugin不起作用

jenkins - 在声明性 Jenkins 管道中动态定义并行步骤

java - 构造函数必须在方法返回之前调用 super() 或 this()