ich ein Formular mit dem select-Tag verwendet erschaffe, die wie folgt aussieht:‚select‘ Tag mit Entitäten in Thymeleaf
<form th:object="${version}" method="post" class="form-horizontal">
...
<div class="control-group" th:classappend="${#fields.hasErrors('product')} ? 'error'">
<label class="control-label" for="product" th:text="#{version.product}">Product</label>
<div class="controls">
<select id="product" th:field="*{product}">
<option value="" th:text="#{common.select.prompt}"></option>
<option th:each="p : ${productList}" th:value="${p.id}" th:text="${p.name}"></option>
</select>
<span class="help-inline" th:errors="*{product}"></span>
</div>
</div>
...
</form>
DomainClassConverter
Klasse von Spring Data JPA
hilft Auto-convert ausgewählt id
auf die Entität Product
, wenn ich Übermitteln Sie das Formular. Die product
sollte auch nicht null sein (I @NotNull
auf das product
Feld in der Version
Klasse bin mit
Das Problem, das ich habe -. Wenn ich wieder kommen, um die Daten zu bearbeiten, wird die Product
nicht ausgewählt
. wenn ich die select
wie folgt aus (th:field
und th:errors
) ändern: <-- p.s. is not a sad smile
<select id="product" th:field="*{product.id}">
<option value="" th:text="#{common.select.prompt}"></option>
<option th:each="p : ${productList}" th:value="${p.id}" th:text="${p.name}"></option>
</select>
<span class="help-inline" th:errors="*{product.id}"></span>
dann wird es ausgewählt, wenn ich wieder kommen, um es zu bearbeiten, aber der Prüfer nicht funktioniert (product
wird immer instanziiert, selbst wenn die ausgewählte ID null
ist.
Es sieht aus wie ein sehr häufiges Szenario (Auswahl einer Entität aus der Liste), aber ich kann kein gutes Beispiel finden. Bitte teilen Sie das geheime Wissen.
Was meinst du mit kommen zurück, um es zu bearbeiten? –
Ich benutze die gleiche Seite zum Erstellen und Bearbeiten der Versionsentität –