Форма без ошибок не возвращает значения
У меня есть некоторые проблемы с получением значения из объекта формы.
Я обрабатываю запрос GET. Это создает форму с предопределенными значениями:
Form<ModelObject> form = form(ModelObject.class).fill(new ModelObject()); return renderJapid(form);
В шаблоне я определил параметр, который принимает
Form<ModelObject>
и это называется "форма". На странице есть только стандартные поля ввода html, такие как:<input type="text" id="fieldName" name="fieldName" value="$form.apply("fieldName").value()">
После отправки этой формы я обрабатываю этот запрос POST другим методом:
Form<ModelObject> form = form(ModelObject.class).bindFromRequest(); if (form.hasErrors()) { //render the form again with errors } else { ModelObject mo = form.get(); // NO-VALUE ERROR }
Каждый раз, когда я получаю ошибку без значения в отмеченной строке, где я хочу получить объект из формы. У вас есть идеи, где может быть проблема? (Отображаются предварительно заполненные данные, и даже объект формы после отправки имеет правильные данные, но не имеет значения)
1 ответ
В конце концов я решил свою проблему. Проблема была вызвана моим классом GenericModel (каждый класс модели происходит от этого класса), который имеет метод public boolean validate()
, Когда я удалил этот метод, все работало нормально. Я знаю, что этот метод вызывается Play для моих собственных пользовательских проверок объекта, но я до сих пор не понимаю, почему это изменяет значение формы на None
,