(Référence) Livres que vous étudiez https://www.amazon.co.jp/Play-Framework-2%E5%BE%B9%E5%BA%95%E5%85%A5%E9%96%80-Java%E3%81%A7%E3%81%AF%E3%81%98%E3%82%81%E3%82%8B%E3%82%A2%E3%82%B8%E3%83%A3%E3%82%A4%E3%83%ABWeb%E9%96%8B%E7%99%BA-%E6%B4%A5%E8%80%B6%E4%B9%83/dp/4798133922/ref=cm_cr_srp_d_product_top?ie=UTF8
La méthode la plus simple est la suivante
「routes」
GET /item controllers.Application.setitem()
「Conotrller (Application.java)」 -Appeler View pour créer un formulaire d'entrée.
public static Result setitem() {
Form<Message> f = new Form(Message.class);
return.ok(item.render("Entrez le numéro d'identification.",f));
}
「View (item.scala.html)」 ・ Rendre la structure d'écran du formulaire de saisie ・ Lorsque vous appuyez sur le bouton d'envoi, les données sont envoyées pour être modifiées. ・ À l'origine, le nom et le message n'ont pas besoin d'être saisis cette fois, mais comme ce sont des entrées obligatoires en raison d'annotations, ils peuvent être masqués.
@(msg:String,form1:Form[models.Message])//Donner à form1 une fonction de formulaire
@main("Sample Page"){
<h1>input ID Number</h1>
<p>@msg</p>
@helper.form(action = routes.Application.edit){
@(helper.inputText(
field = form1("id")//Le formulaire est sorti
))
<input type="hidden" value = "dummy" name="name"/>
<input type="hidden" value = "dummy" name="message"/>
<input type="submit">
}
}
「routes」
POST /edit controllers.Application.edit()
「Conotrller (Application.java)」 -Appeler la vue pour rendre l'état d'entrée de l'entité frappée par la recherche d'ID.
public static Result edit() {
Form<Message> f = new Form(Message.class).bindFromRequest();
if (!f.hasErrors()) {
Message obj = f.get();//obj contient la valeur saisie
Long id = obj.id;//Extraire l'identifiant de obj
obj = Message.find.byId(id);//Recherchez une entité par identifiant et entrez le résultat de la recherche dans obj
if (obj != null) {
f = new Form(Message.class).fill(obj);//Incorporer l'entité saisie dans le formulaire
return ok(edit.render("ID=" + id + "Modifiez le message.", f));
} else {
return ok(item.render("ERROR:Message d'identification introuvable.", f));
}
} else {
return ok(item.render("ERROR:Il y a un problème avec l'entrée.", f));
}
}
「View (edit.scala.html)」 · Rendre la structure de l'écran du formulaire de saisie avec l'entité saisie ・ Lorsque vous appuyez sur le bouton d'envoi, les données sont envoyées pour être mises à jour.
@(msg:String,form1:Form[models.Message])
@main("Sample page"){
<h1>Update Data</h1>
<p>@msg</p>
@helper.form(action=routes.Application.update){
<input type="hidden" value="@form1("id").value" name="id"/>//L'entité à mettre à jour est spécifiée
@(helper.inputText(
field = form1("name")
))
@(helper.inputText(
field = form1("mail")
))
@(helper.textarea(
field = form1("message")
))
<input type="submit">
}
}
「routes」
POST /update controllers.Application.update()
「Conotrller (Application.java)」 ・ Mettez à jour les données et passez au premier écran avec retour
public static Result update() {
Form<Message> f = new Form(Message.class).bindFromRequest();
if (!f.hasErrors()) {
Message data = f.get();
data.update();
return redirect("/");
} else {
return ok(edit.render("ERROR:Veuillez entrer à nouveau.", f));
}
}
「routes」
GET /del controllers.Application.delete()
POST /remove controllers.Application.remove()
「Conotrller (Application.java)」
public static Result delete() {
Form<Message> f = new Form(Message.class);
return ok(delete.render("Numéro à supprimer", f));
}
}
「View (delete.scala.html)」 ・ Rendre l'écran de réception de suppression ・ Lorsque vous appuyez sur le bouton d'envoi, les données sont envoyées pour être supprimées.
@(msg:String,form1:Form[models.Message])
@main("Sample Page"){
<h1>delete data</h1>
<p>@msg</p>
@helper.form(action = routes.Application.remove){
@(helper.inputText(
field = form1("id")
))
<input type="hidden" value="dummy" name="name"/>
<input type="hidden" value = "dummy" name="message"/>
<input type="submit">
}
}
public static Result remove() {
Form<Message> f = new Form(Message.class).bindFromRequest();
if (!f.hasErrors()) {
Message obj = f.get();
Long id = obj.id;
obj = Message.find.byId(id);
if (obj != null) {
obj.delete();
return redirect("/");
} else {
return ok(delete.render("ERROR:Le numéro d'identification est introuvable.", f));
}
} else {
return ok(delete.render("ERROR:Il y a eu une erreur dans l'entrée", f));
}
}
Recommended Posts