2015-05-13 3 views
0

Я делаю веб-приложение с использованием Java/Spring/Thymeleaf и, похоже, не могу пройти мимо этой проблемы!Связывание вложенной петли в тимелеафе

Итак, вот мой thymeleaf код шаблона:

<form th:action="@{/holiday/create}" th:object="${holiday}" method="post"> 
    <select name="user_scroll"> 
     <option th:each="user : ${allUsers}" th:value="${user.id}" 
       th:text="${user.email}" th:field="${holiday.user_id}" /> 
    </select> 
    <button type="submit"> 
     Create 
    </button> 
</form> 

Я прочитал соответствующие вопросы здесь, но я все еще озадачен. Я читал, что вы не можете напрямую связать объект, поэтому я пытаюсь привязать к свойству user_id объекта праздника. Я подозревал, что объект праздника мне не доступен, но это, похоже, не так. Возможно, я неправильно обращаюсь к свойству user_id?

Когда я нажимаю «Отправить» и следую за отладкой до моего контроллера, user_id просто отправляется с нулевым значением. Надеюсь, этого достаточно информации - дайте мне знать, если мне нужно предоставить больше. Спасибо!

+0

Какая у вас проблема? – mtyurt

ответ

1

Фрэнки, попробуйте добавить -е: поле атрибут в выбрать объект вместо того, чтобы положить его в вариант. Пример:

<select name="user_scroll" th:field="*{user_id}"> 

Обратите внимание на синтаксис SPEL. Начинает со звездочки, а не $ и говорит user_id вместо holiday.user_id. Вы можете получить доступ к этой области непосредственно этот путь, так как вы уже определили его в качестве выбранного объекта в определении формы, используя

th:object="${holiday}" 

Это будет также связать выбранное значение в user_id свойство вашего объекта основы и должен решить проблема.

Смежные вопросы