提问者:小点点

胸腺URL与多个变量


我在我的Spring项目中使用thymeleaf作为模板引擎。

我的问题是:我正在尝试将我的表单提交到包含两个变量的url,例如:

mysite/bla/{id}/bla/{id2}(url中的两个变量)。所以,我在尝试这个:

th:href="@{/bla/{id}/bla/{id2} (id=${object1.id}, id2=${object2.id})}"

控制台显示错误:

"跳过URI变量'id',因为请求包含同名的绑定值."那么,有人知道发生了什么吗?

更新:

我将路径更改为一个变量,只是为了进行一些测试,问题仍然发生。控制器非常简单:

@PostMapping(value = "/{id}/bla")
    public ModelAndView salvarBug(MyObject object,
            @PathVariable("id") Long idObject1, Principal principal) {
                objectService.save(object);
                return new ModelAndView("redirect:"+idObject1);
    }

我也更新了html中的链接:

        <form method="POST" th:object="${object}"
            th:action="@{/{id}/bla (id=${object.id})}">

真正的问题是:数据库的属性为空。这没有意义。我解决了这个问题。


共3个答案

匿名用户

您的解决方案使用标准语法并且看起来正确。您可以尝试使用连接的解决方法:

更新:

尝试将变量的名称更改为id以外的名称。我怀疑有一个JIRA可能会导致问题。您也可以使用@ModelAt和进行注释。您还应该确保您使用的是最新版本的Spring。

此外,您可以执行@PostMaps("/{id}/bla")

匿名用户

试试这个方法对我很有效

<a th:href="@{/this/istheurl(parameter1 = val1, parameter2 = val2) }">

匿名用户

真正的问题是:数据库的属性为空。这没有意义。我解决了这个问题。

相关问题