> Java > java지도 시간 > PlayFramework는 APP를 완벽하게 구현합니다. (6)

PlayFramework는 APP를 완벽하게 구현합니다. (6)

黄舟
풀어 주다: 2016-12-23 16:41:42
원래의
1204명이 탐색했습니다.

블로그 보기 및 댓글 기능 추가 필요

1. 보기 기능 생성

application.java에 show() 메소드 추가

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

app/views/Application/show.html 만들기

#{'main.html' 확장 /}
#{제목 설정:post.title /}

# {표시 게시물: 게시물, 형식:'full' /}

 

페이지 템플릿에 링크 추가

블로그 방문


${_post.title}

홈페이지로 돌아가기

${blogTitle}

 

2. 라우팅 규칙 생성

현재 페이지 URL http://localhost:9000/application/show ?id=3

은 * /{controller}/{action} {controller} 규칙에 따라 구문 분석됩니다.{action}

은 Route

GET 전에 새로 생성되었습니다. 게시물 /{id}                                  Application.show

액세스 경로는 http://localhost:9000/posts/3

 

추가 라우팅 구문 참조: http ://play-framework.herokuapp.com/zh/routes#syntax

3. 페이지 탐색 추가

Post 클래스 PRevious()next( )

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

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

 

show .html 페이지에 탐색 버튼 추가




 

4. 댓글 상자 추가

애플리케이션 컨트롤러에 postComment() 메소드 추가

public static void postComment(Long postId, String 작성자, String 내용 ) {
게시물 게시물 = Post.findById(postId);
post.addComment(author, content);

show(postId);

}

 

show.html 수정


댓글 달기



#{form @Application.postComment(post .id)}
                          ~          ,, , "작성자" />
                                                    "content" id="content">

🎜> <입력 유형="제출" value="Submit your comment" /> ;

#{/form}


 

인증을 추가하여 작성자와 콘텐츠가 비어 있지 않습니다

import play.data.validation.*;

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

양식 수정, 오류 표시

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

   #{ifErrors}
       


           모든 항목을 필수로 입력하세요!


   #{/ifErrors}

   


       
       
   


   


       <레이블 ="content">귀하의 메시지:
       
       


       
   


#{/form}

  

6.优化客户提示

加载jquery적类库

 

修改Show.html

#{if Flash.success}
  

${flash.success}


#{/if}

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

인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿