Thymeleaf/SB 如何将对象中的变量传递给 link 元素的 href 属性?

Thymeleaf/SB How do I pass in a variable from an object to a link element's href attribute?

我想将 project.url 变量传入元素的 th:href 属性,但目前导航到的 URL 是 - /project/project。url/contribute 这显然不是我想要发生的事情。 按钮上方的列表显示了项目对象的信息,URL 显示正确。

    <ul>

    <span>Title: </span>
    <li th:text="${project.url}">Title</li>

    <span>Started: </span>
    <li th:text="${project.publishedOn}">Started</li>

    <span>Target: </span>
    <li th:text="${project.targets}">Target</li>

    <span>Description: </span>
    <li th:text="${project.description}">Description</li>

    <span>Amount Contributed: </span>
    <li th:text="${project.amountContributed}">Amount Contributed</li>

</ul>

<div class="contributeButton">
    <button>
 <!-- <a href="../project/' + ${project.url} + '/contribute">Contribute</a> -->
 <a th:href="@{/project/${project.url}/contribute(action='show_all')}">Contribute</a>
    </button>
</div>

我需要在 link 中放入什么 href 才能使其正常工作?谢谢

您可以使用串联来做到这一点。我还没有测试过这个,但试一试:

<a th:href="@{'/project/' + ${project.url} + '/contribute(action=\'show_all\')'}">view</a>

为此,您应该利用 Thymeleaf 的 standard URL syntax

<a th:href="@{/project/{url}/contribute(url=${project.url})}">view</a>