私はjpenrenのThymeleaf春データ方言を使用します。彼の最後のアドバイスに従いhttps://github.com/jpenren/thymeleaf-spring-data-dialectSpring DataのPageインターフェースでThymeleafの#lists.isEmptyを使用するにはどうすればいいですか?
:
属性 「ページ」のリクエストのデフォルトのSpringDataDialect検索するか、もしタイプ org.springframeworkの一つの属性.data.domain.Pageが存在します。別のモデル 属性を使用するには、SDを使用する:ページオブジェクト= "$ {attrNameで}"
は、私は私の春のコントローラでは、このような何かを:
@RequestMapping("search")
public String search(Model model, @PageableDefault Pageable pageable) {
Page<User> users = userRepository.findAll(pageable);
model.addAttribute("users", users);
return "user/search";
}
と私のsearch.html
ビューで、ここです抜粋:
<table class="table">
<caption class="text-xs-center" th:if="${#lists.isEmpty(users)}">No user found</caption>
<thead>
<tr>
<th>Username</th>
(...)
<tbody>
<tr th:each="user : ${users}">
<td th:text="${user.name}">Username</td>
残念ながら${#lists.isEmpty(users)}
は機能しません。これは私がこのPage<?>
を利用しない他のページでも動作します。
このテストを行うにはどうすればよいですか?
接続が不明です。最初にSpring Data Thymeleaf方言を参照してから使用しないでください。サンプルコードでは、リスト式で使用されている別の変数も表示され、 'users'では表示されません。ページに 'List'を返す' getContent() 'メソッドがあるので、' page.content'をリスト式に渡すとそのトリックを行うべきです。 –
ページネーションを使用していますが、ここでは何も表示されません。「 '' また、コードを修正しました。 '。 – maxxyme
あなたが言ったように、getContent()を使うと便利です: '' th:if = "$ {#lists.isEmpty(users.content)}" ''で成功しました。 – maxxyme