Ich rufe einen Int-Wert aus einer Datenbank auf, um die Anzahl der Sterne zu bestimmen, die in meinem HTML-Code mit Thymelefleund Spring Boot angezeigt werden sollen, aber die Verwendung von $ {# numbers.sequence (1, obj.stars)} nicht scheinen zu arbeiten.Thymeleaf: Wie benutzt man # numbers.sequence() mit einem variablen Limit?
das ist mein html-thymeleaf Code:
<tr th:each="obj : ${allObjs}" class="pointer" th:onclick="'javascript:openobj(\'' + ${obj.id} + '\');'">
<td class="text-center" th:text="${obj.id}"></td>
<td class="text-center" th:text="${obj.code}"></td>
<td class="text-center" th:text="${obj.name}"></td>
<td class="text-center" th:text="${obj.contract}"></td>
<td class="text-center" th:text="${obj.difficulty}"></td>
<td class="text-center" th:text="${obj.priority}"></td>
<td class="text-center">
<!--this is the line I can't get to work :(-->
<span class="fa fa-star-o" th:each="star:${#numbers.sequence(1,obj.stars)}"></span>
</td>
<td class="text-center" th:text="${obj.state}"></td>
<td class="text-center" th:text="${obj.percent}"></td>
<td class="text-center" th:text="${obj.term}"></td>
<td class="text-center" th:text="${obj.version}"></td>
<td class="text-center" th:text="${obj.price}"></td>
</tr>
und mein Controller
@GetMapping("/Obj")
public ModelAndView index() {
ModelAndView view = new ModelAndView("/Obj/index");
view.addObject("title", "Obj");
List<Obj> allObjs = ObjService.findAll();
view.addObject("allObjs", allObjs);
return view;
}
Was ist der Fehler, den Sie bekommen? Dieser Thymelcode ist korrekt (nur getestet). Hast du die View-Source verifiziert und sichergestellt, dass es nichts mit deinem CSS ist? – Metroids
der Fehler ist dies: Es gab einen unerwarteten Fehler (Typ = Interner Serverfehler, Status = 500). Ausnahme, die SpringEL-Ausdruck auswertet: "# numbers.sequence (1, obj.stars)" (/ Obj/index) –
wird obj.stars zu einer Ganzzahl aufgelöst? – Metroids