Heim  >  Artikel  >  Java  >  PlayFramework implementiert eine APP vollständig (6)

PlayFramework implementiert eine APP vollständig (6)

黄舟
黄舟Original
2016-12-23 16:41:421172Durchsuche

Muss die Funktion zum Anzeigen und Kommentieren zum Blog hinzufügen

1. Erstellen Sie die Anzeigefunktion

Fügen Sie die Methode show() in application.java hinzu

public static void show(Long id) {
Post post = Post.findById(id);
render(post);
}

App/views/Application/show.html erstellen

#{extends 'main.html' /}
#{set title:post.title /}

# {display post: post, as:'full' /}

 

Link in Seitenvorlage hinzufügen

Blog besuchen


${_post.title}

Zurück zur Startseite

${blogTitle}

 

2. Routingregeln erstellen

Aktuelle Seiten-URL http://localhost:9000/application/show ?id=3

wird von der Regel * /{controller}/{action} {controller} analysiert.{action}

wurde vor Route

GET / neu erstellt posts /{id}                                 Application.show

Der Zugriffspfad wird zu http://localhost:9000/posts/3

 

Weitere Referenz zur Routing-Syntax: http ://play-framework.herokuapp.com/zh/routes#syntax

3. Seitennavigation hinzufügen

Methode zur Post-Klasse hinzufügen, PRevious()next( )

public Post previous() {
return Post.find("postedAt < ? order by postedAt desc",postedAt).first();
}

public Post next() {
return Post.find("postedAt > ? order by PostedAt asc", PostedAt).first();
}

 

show Navigationsschaltflächen zur .html-Seite hinzufügen




 

Ein Kommentarfeld hinzufügen

Application Controller fügt Methode postComment() hinzu

public static void postComment(Long postId, String author, String content) {
Post post = Post.findById(postId);

post.addComment(author, content);

show(postId);

}

 

show.html ändern

Kommentar posten



#{form @Application.postComment(post. .id)}
                                                                                                                                                                    ,, ,                                          " Autor" />

                                                              "content" id="content">

< p>

#{/form}


 

5. Fügen Sie eine Bestätigung hinzu, um den Autor und den Inhalt zu überprüfen sind nicht leer

import play.data.validation.*;

public static void postComment(Long postId, @Required String author, @Required String content) {
Post post = Post .findById(postId);
if (validation.hasErrors()) {
render("Application/show.html", post);
}
post.addComment(author, content);
show(postId);

} 

Formular bearbeiten, Fehler angezeigt

#{form @Application.postComment(post.id)}

   #{ifErrors}
       


           Alle Felder sind erforderlich!


   #{/ifErrors}

   


       
       
   


   


       
       
       


       
   


#{/form}

  

6.优化客户提示

加载jquery的类库

 

修改Show.html

#{if Flash.success}
  

${flash.success}


#{/if}

#{display post:post, as:'full' /}

  

添加Comment成功的提示

post.addComment(author, content);
flash.success("Vielen Dank für das Posten von %s ", Autor)上就是PlayFramework完整实现一个APP(六)的内容, 更多相关内容请关注PHP中文网(www.php.cn)