본문 바로가기
PROJECT/Project01_인스타그램 클론코딩

PROJECT 01 )+ 기능 추가 | 메인페이지에서 댓글 작성 기능 만들기

by JUNG씨 2022. 10. 10.

👩🏻‍💻프로젝트 막바지에 홈화면에서 댓글을 작성해도 게시글과 홈화면 모두 댓글이 나오게 하는 기능을 만들고 있었다. 거의 하루종일 쳐다보고 있었는데 아무리해도 안돼서 결국 그냥 포기하고 제출했다.

튜터님께 질문했을 때 views.py에 있는 메소드가 제대로 작동되는지 확인하면 될것 같다고 하셨는데, 알고보니 그냥 댓글을 작성하는 write_comment 메소드랑 기능이 겹쳐서 제대로 작동되지 않았다. 그냥 메소드 하나만 추가해주면 될것을..... 이 간단한 것을.....하루종일 붙잡고 있었다니..... 휴^_^;;;🫠

 

 

 

#tweet/urls.py에 추가

# 메인화면에서 댓글 작성하기
path('tweet/home/comment/<int:id>', views.mainpage_write_comment, name='mainpage_write_comment'),
#tweet/views.py에 추가

@login_required    
def mainpage_write_comment(request, id):
    if request.method == 'POST':
        comment = request.POST.get("comment","")
        current_tweet = TweetModel.objects.get(id=id)

        TC = TweetComment()
        TC.comment = comment
        TC.author = request.user
        TC.tweet = current_tweet
        TC.save()

        return redirect('/tweet/')
#templates/tweet/home.html의 form태그의 action 경로 수정


<form class="input-group mb-3" action="/tweet/home/comment/{{ tw.id }}" method="post">
    {% csrf_token %}
    <input type="text" class="form-control" id='comment' name='comment'
        placeholder="댓글을 남겨주세요" />
    <button class="btn btn-outline-secondary" type="submit">작성</button>
</form>