[英]How to use Response for Form Array?[ PlayFramework ]
感謝您閱讀我的問題。
如何對表單數組使用響應?
public class Test extends Controller {
static int form_max_length = 100;
static Form<Torque> torqueForm;
static Torque[] torque = new Torque[form_max_length];
static int checkData = 0;
public static Result completeData() {
torqueForm = form(Torque.class).bindFromRequest();
for (int checkData=0; checkData<form_max_length; checkData++) {
if (torque[checkData] != null) {
checkData++;
} else {
torque[checkData] = torqueForm.get();
torque[checkData].save();
break;
}
}
return TODO;
}
public static Result printData() {
return ok(printSystem.render(torqueForm));
}
}
扭矩系統.scala.html
@main("") {
<form action="/test" method="POST">
<div>
<label> Title </label>
<input type="text" name="title">
</div>
<div>
<label> Contents </label>
<input type="text" name="contents">
</div>
<div>
<input type="submit" value="submit">
</div>
</form>
}
printSystem.scala.html
@(form: Form[Torque]) main("") { @form.field("id").value() @form.field("title").value() @form.field("contents").value() }
請幫我。
您沒有確切說明問題所在,但我嘗試猜測。 我可以給你一個替代方案嗎? 它應該與Play 2.1.x一起使用。
您可能要使用Map而不是數組。 也可以從表單獲得作為響應。
public static Result completeData() {
DynamicForm f = play.data.Form.form().bindFromRequest();
Map<String, String> formData = f.data();
for (Entry<String, String> entry : formData.entrySet()) {
String key = entry.getKey();
if (key.equals("contents")) {
yourModel.setSomeData(entry.getValue());
}
}
}
如果您確實想要數組,則可以使用formData.entrySet()。toArray()處理它。
祝好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.