점프 투 장고 조회수 기능 관련 질문드립니다!

장고로 추가 기능(조회수)를 구현하는 중인데, 웹 페이지는 로딩이 되는데 조회수 데이터를 못 받아오는 듯 합니다...이럴 때는 어떻게 해야 할까요??

  1. models.py
class QuestionCount(models.Model):
    ip = models.CharField(max_length=30)
    question = models.ForeignKey(Question, on_delete=models.CASCADE)

    def __unicode__(self):
        return self.ip
  1. views.py
def get_client_ip(request):
    x_forwarded_for = request.META.get('HTTP_X_FORWARDED_FOR')
    if x_forwarded_for:
        ip = x_forwarded_for.split(',')[-1].strip()
    else:
        ip = request.META.get('REMOTE_ADDR')
    return ip

  1. base_views.py
def detail(request, question_id):
    question = get_object_or_404(Question, pk=question_id)
    context = {'question': question}
    # 조회수
    ip = get_client_ip(request)
    cnt = QuestionCount.objects.filter(ip=ip, question=question).count()
    if cnt == 0:
        qc = QuestionCount(ip=ip, question=question)
        qc.save()
        if question.view_count:
            question.view_count += 1
        else:
            question.view_count = 1
        question.save()
    return render(request, 'pybo/question_detail.html', context)
  1. question_detail.html
<div class="badge bg-light text-dark p-2 text-start">
                    <div class="mb-2">{{ question.author.username }}</div>
                    <div>{{ question.create_date }}</div>
                    <div class="mb-2"> 조회수: {{ question.view_count }}</div>
                </div>

admi 408

2022년 12월 3일 12:01 오전

cnt 가 0이 아닌 경우는 아무일도 안하게 코드되어 있네요. - 박응용님, 2022년 12월 3일 11:58 오전 추천 , 대댓글
@박응용님 앗 그렇네요 수정해보겠습니다. 알려주셔서 감사합니다! - admi님, 2022년 12월 3일 10:39 오후 추천 , 대댓글
목록으로