<오늘의 학습>
삭제삭제삭제삭제삭제삭제삭제삭제삭제삭제
회원탈퇴
- controller
순서가 문제일까 싶어서.. user를 삭제하는 걸 젤 마지막으로 옮김!!!!
post 부분에서 에러가 많이 떠서 뒤에 코드가 실행이 안되는 것 같은데 like는 아주 잘 삭제되었다.
- Entity
모든 엔티티에 @OnDelete(action = OnDeleteAction.CASCADE)
추가.
원래는 cascade = CascadeType.ALL
을 사용했었는데 찾아보다가 바꿨다.
뭐가 다르다고 했었던 것 같은데.... 이것 저것 코드 만지다 보니까 왜 바꿨는지 까먹어버렸다...
이러면 안되는딩 ㅠㅠ
- PostService
좀 맘에 드는 부분. 지금 postImgRepository에서 postId 로 삭제를 하고 있는데
PostImg 엔티티에는 userId 가 없어서 postId로만 해결을 봐야 했다....
그래서 일단!!! userid로 post를 찾아와!!! 그리고 거기서 postid를 가져와!!!
라는 생각으로 코드를 막 작성... 흐규흐규 너무 잘 되서 감동... ㅠㅠㅠ
그리고 처음에는 그냥 post.get(0).getId()로 했는데 생각해보니 게시글을 하나만 쓰는게 아니잖아?!
바~로 for문 작동. post가 list 형식이라서 for를 length로 해야할 지 뭘로 해야할 지 몰랐는데
인텔리제이 요놈~~ 아주 물건이야~~ for문 작성하고 안에 post만 적으니까 알아서 .size를 추천해준다.... 쥔짜 인텔리하네;;;
해결??
이렇게 해서 회원탈퇴 기능을 다 완성~~~!!!
이라고 하고 싶지만...
마지막 문제가 남았다...
누군가 탈퇴하고자 하는 회원의 게시글에 좋아요를 누르면... 탈퇴가 안된다는 것
(야 가지마... 가지말고 나랑 놀아...)
탈퇴를 할 때 내 게시글을 삭제하면서... 좋아요를 누른 사람의 좋아요를 없애고...??
탈퇴 처리를...????
다시 코드를 뚱땅뚱땅 쳐봐야 겠다..
진짜 해결!!!
- service
위에 service 코드에서는 postImg만 for문에서 돌렸는데 이렇게 하니까 오류가 났었다.
그래서 막 생각해보다가..
아!!!! 게시물은 누가 좋아요 눌러도 잘 삭제가 되넹???? 그럼 이걸 활용해서...??
내가 탈퇴할때 게시물을 하나씩 다 지워버리고 탈퇴를 하면??????
그래서 userID 로 post를 찾아서 postID를 가져와서 like,postImg,post 까지!
다 삭제 해버렸다.
그렇게 하니까 아주아주 잘 작동이 된다.
근데 게시물이 엄~~청 많아져서 나중에 코드가 작동하는데 오래걸릴려나...?
이 부분은 나중에 팀원들이랑 회의를 해봐야겠다.
생각보다 해결이 오래 걸리지 않았다.
게시물이 삭제될 때도 누가 좋아요를 누르면 안되려나..? 했는데 게시물은 아주 잘 삭제가 되어서 빠르게 문제를 해결한 것 같다.
우선 해결은 했는데.. 내가 짠 코드가 좋은 코드인지는 알 길이 없다.
앞으로 해야 할 것
이제 남은건
- 사진을 더 넣을 수 있게 하는 거...?
- 판매완료 처리 하는 거...?
- 채팅.....??????? (<- 젤 마지막에 해야할 까..?)
사진 넣는 거 알아보는데.. 못 알아 먹겠다.. 나는 바..보..
아!! 로그인 없이 우리 서비스를 둘러보다가 좋아요를 누른다거나 채팅을 시도한다거나 본격적(?)으로 서비스를 사용할 때 로그인이 되어 있지 않다면 로그인이 필요한 서비스 입니다.
를 띄우고
로그인 후 다시 보던 사이트로 이동해서 계속 서비스를 사용할 수 있게 만들고 싶은데
이 부분도 상당히 어려워 보인다..!! Security에서 인증을 바꿔볼려고 했는데 모조리 실패.. ㅋㅋㅋㅋ
다음주에 팀장님까지 오시면 다같이 얘기해보고 결정해야겠다!!
-오늘의 한 줄-
누구인가. 누가 좋아요를 눌렀어