"장고 실시간 추천"의 두 판 사이의 차이
둘러보기로 가기
검색하러 가기
(새 문서: == 개요 == 추천기능은 앞서 만들었다. 다만, 매번 새로고침 해서 데이터를 갱신했는데, 이번엔 AJAX를 이용한 통신으로 추천을 실시간 반영...) |
(차이 없음)
|
2021년 6월 25일 (금) 10:23 판
1 개요
추천기능은 앞서 만들었다. 다만, 매번 새로고침 해서 데이터를 갱신했는데, 이번엔 AJAX를 이용한 통신으로 추천을 실시간 반영하는 방법을 다루고자 한다.
2 모델 변형
@login_required(login_url='membership:login')
def vote_question(request, question_id):
question = get_object_or_404(Question, pk=question_id)
question_like, question_like_created = question.like_user.get_or_create(user=request.user)
#위 함수가 어떤 기능인지 제대로 파악해야겠다.
#question.voter.add(request.user)
if not question_like_created: # 생성된 게 아닌 경우.
question_like.delete() # 삭제한다.
#기존의 이 줄을 아래로 대체한다. return redirect('pool:detail', question_id=comment.answer.question.id)
#ajax를 구현하기 위해 json으로 반환한다.
return HttpResponse(json.dumps(context), context_type="application/json")