我有一个关于在Spring Boot中更改语言后将语言部分添加到现有URL的问题
这是我的URL按名称升序列出所有品牌。
admin/brands/page/1?sortField=name&sortDir=asc
当我改变语言时,URL如下所示。
admin/brands/page/1?lang=fr
这是我在thymeleaf中的语言更改代码片段,如下所示。
<li class="nav-item">
<a class="nav-link" th:href="@{?lang=en}">
<img th:src="@{/images/english.png}" width="30">
</a>
</li>
<li class="nav-item">
<a class="nav-link" th:href="@{?lang=fr}">
<img th:src="@{/images/french.png}" width="30">
</a>
</li>
我想得到这个urladmin/品牌/页面/1? sortField=name
我该怎么做?
下面是我的解决方案。
<li class="nav-item">
<a class="nav-link"
th:with="urlBuilder=${T(org.springframework.web.servlet.support.ServletUriComponentsBuilder).fromCurrentRequest()}"
th:href="${urlBuilder.replaceQueryParam('lang', 'en').toUriString()}">
<img th:src="@{/images/english.png}" width="30">
</a>
</li>
<li class="nav-item">
<a class="nav-link"
th:with="urlBuilder=${T(org.springframework.web.servlet.support.ServletUriComponentsBuilder).fromCurrentRequest()}"
th:href="${urlBuilder.replaceQueryParam('lang', 'tr').toUriString()}">
<img th:src="@{/images/turkish.png}" width="30">
</a>
</li>