0
我已經創建了一個輸入表單。當用戶提交值並且未通過驗證時,如何從用戶獲取原始值以顯示?我可以正確地看到驗證錯誤消息指出「字段是必需的」。它轉發回輸入表單並顯示驗證錯誤,但它不保存用戶輸入的值。Play框架驗證:重新顯示輸入
示範
@Entity
public class Question extends BaseModel {
@Required
@MaxSize(100)
public String title;
@Required
@MaxSize(5000)
public String txt;
}
的控制器
public class Questions extends Controller {
public static void ask() {
Question question = new Question();
render(question);
}
public static void addQuestion(Question question) {
// save question
if (!question.validateAndSave()) {
params.flash();
Validation.keep();
ask();
}
Application.index();
}
}
視圖
#{form @exchange.Questions.addQuestion()}
<label class="control-label" for="question.title">Question Title</label>
<input type="text" class="input-large" name="question.title" value="${question.title}" />
#{if errors.forKey('question.title')}<span class="alert-error"> #{error 'question.title'/}</span> #{/if}
<label class="control-label" for="question.txt">Details</label>
<textarea class="input-xxlarge span7" rows="6" name="question.txt">${question.txt}</textarea>
#{if errors.forKey('question.txt')}<br/><span class="alert-error"> #{error 'question.txt'/}</span> #{/if}
<button type="submit" class="btn btn-primary">Ask Question</button>
#{/form}
我不得不最終做'$ {flash_'question.title']}'和'$ {flash ['question.txt']}''。然後顯示原始輸入。 – Ryan