묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)
댓글 출력 관련해 질문드립니다
안녕하세요 선생님, 현재 [초급편] 안드로이드 커뮤니티 앱 만들기 수강 중 섹션 8. 게시판 댓글 만들기의 댓글 불러오기까지 진행한 상태입니다. 댓글 리스트뷰를 강의와 조금 다르게 출력하고 싶은데, 난관에 부딪혀 질문드립니다. 현재 강의에서처럼 리스트뷰에 height를 dp 단위로 지정하면 height를 충분하게 설정했을 때엔 여백이 많이 생기고,height가 부족하면 댓글이 잘리는 문제가 생기더라고요. 저는 위 캡쳐처럼 여백이 없고, 댓글란이 잘리지 않고, 이중스크롤이 필요없는 댓글 영역을 만들고 싶습니다. 여러 방법을 알아봤는데 캡쳐처럼 아이템 1개 height 내에서 댓글란만 따로 스크롤을 가능하게 하거나, 화면을 2분할해 본문만 스크롤/ 댓글만 스크롤 이런 식으로 처리하는 게 차선책이더라고요. 여태까지 https://stackoverflow.com/questions/6210895/listview-inside-scrollview-is-not-scrolling-on-android/11554684#11554684 https://trivedihardik.wordpress.com/2011/09/19/scrollview-inside-scrollview-scrolling-problem/ https://hoonkim1126.tistory.com/5 https://itstudentstudy.tistory.com/49 정도를 시도해봤는데 대부분 오래되고 자바로 쓰인 코드라 제대로 작동하지 않아 선생님께 도움을 요청드립니다. 댓글을 리사이클러뷰로 아예 갈아엎는 건 최후의 보루로 남겨놓고 있습니다ㅠㅠ
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
안녕하세요 선생님 DRF 대댓글에 대해서 질문드립니다!!
안녕하세요 선생님 DRF 대댓글에 대해서 질문드리려고 합니다. 제가 원하는 대댓글 구현은 계층형인데요 (물론 요즘은 잘 안쓰는걸로 알고있지만;;) 예를 들어 (reddit이랑 댓글 구현이 정확히 일치합니다!! -> 계층형 댓글로 구현이 되있습니다) 댓글 -대댓글 --대대댓글 --대대댓글 -대댓글 --대대댓글 댓글 -대댓글 -대댓글 댓글 ... 위와 같이 어떠한 포스트글에 댓글, 대댓글 전부 한번에 보이게 구현을 하고 싶은데 보통 대댓글도 결국 댓글이라서 self join하자나요? class Comment(TimestampedModel): author = models.ForeignKey(User, on_delete=models.CASCADE) post = models.ForeignKey(Post, on_delete=models.CASCADE, verbose_name='포스트 제목') message = models.TextField(verbose_name='댓글') parent = models.ForeignKey('self', on_delete=models.CASCADE, null=True) 근데 문제는 pagination이 걸려 있다보니깐 어떠한 댓글에 대댓글, 대대댓글을 저렇게 정렬된 상태로 한번에 가져오는 방법이 떠오르지가 않네요; (댓글에 좋아요도 추가해서 정렬 알고리즘을 추가할 예정입니다) 그래서.. 1. pagination을 풀어서 어떠한 포스트에 댓글을 전부 response하고 클라이언트 단에서 정렬하라고 하는건지? (물론 당연히 DB 부담이 커서 처음엔 이 방법을 전혀 생각하고 있지 않았지만, 한편으로는 댓글은 많아봐야 몇천개라서 커버가 될 수있을까 ? 라는 막연한 생각이드네용) 2. 댓글 하나당 대댓글이 있는지 재귀적으로 요청해서 대댓글이 있으면 가져오고 없으면 넘어가는 식으로 구현? (물론 당연히 이것도 하나의 포스트에 여러번의 DB 요청을 하기 때문에 서버측에서 굉장히 부담이 커서 현실성이 매우 떨어짐) 위 두 방법은 좀 현실성이 떨어져서 좀 더 효과적으로 구현할 수 있는 방법이 있을것같은데 실력과 경험부족으로 떠오르지가 않네요... 혹시 위 처럼 계층형 대댓글을 구현하는데 좋은 로직이나 자료나 솔루션이 있을까요???? (프론트엔드는 코틀린입니다)