oolongsawel / springboot_study

springboot_study
0 stars 0 forks source link

회원 프로필 조회 #5

Open oolongsawel opened 2 years ago

oolongsawel commented 2 years ago

에러코드

[Property or field 'name' cannot be found on object of type 'java.util.Optional' - maybe not public or not valid?](https://dtuto.com/questions/2134/property-or-field-name-cannot-be-found-on-object-of-type-java-util-optional-maybe-not-public-or-not-valid)

수정전 java/com/laundry/laundry/controller/MemberController.java

    //멤버프로필 조회
    @GetMapping("/member/read/{id}")
    public String readMemberProfile(@PathVariable("id") int id, Model model){
        Optional<Member> member = memberService.getMemberProfile(id);

/////////////////////////////////////////////////////////////////////////////////
         model.addAttribute("member", model);
/////////////////////////////////////////////////////////////////////////////////

        return "member/memberProfile.html";
    }

수정후 java/com/laundry/laundry/controller/MemberController.java

    //멤버프로필 조회
    @GetMapping("/member/read/{id}")
    public String readMemberProfile(@PathVariable("id") int id, Model model){
        Optional<Member> member = memberService.getMemberProfile(id);
        System.out.println(member);

/////////////////////////////////////////////////////////////////////////////////
        if( member.isPresent() ) {
            model.addAttribute("member", member.get());
        }
/////////////////////////////////////////////////////////////////////////////////

        return "member/memberProfile.html";
    }

전체 회원 조회페이지에서 각 회원의 테이블셀을 클릭하면 특정 회원 프로필 조회화면으로 넘어감

oolongsawel commented 2 years ago

전체 회원 조회에서 데이터 클릭하면 개인 프로필 화면으로 이동

resources/templates/member/read.html AS-IS

  <td th:text="${memberList.id}" ></td>

TO-BE

<td th:text="${memberList.id}" th:onclick="|location.href='@{'/member/read/' + ${memberList.id}}'|" style="cursor:pointer"></td>

참고자료 [Thymeleaf] location.href에 변수 넣기 (th:onclick, GET) https://mimah.tistory.com/entry/Thymeleaf-locationhref%EC%97%90-%EB%B3%80%EC%88%98-%EB%84%A3%EA%B8%B0-thonclick-GET