<TIL - 0024> 검색 기능 추가

개발일지·2023년 4월 14일
0

til

목록 보기
24/43


팀 프로젝트 도중 검색기능이 게시글만 검색되도록 되어있었다.

@login_required(login_url='')
def search(request):
    if request.user.is_authenticated:
        if request.method == "GET":
            search_keyword = request.GET.get("q", "")
            comment_form = CommentForm()

            posts = Post.objects.filter(caption__contains=search_keyword)

            serializer = serializers.PostSerializer(posts, many=True)
            return render(request, 'post/posts.html', {'posts': serializer.data, 'comment_form': comment_form})

검색 기능이 게시글의 내용뿐 아니라 작성자도 포함하게 추가했다.

            # 검색어가 포함된 caption과 username을 모두 찾음
            posts = Post.objects.filter(Q(caption__contains=search_keyword) | Q(
                author__username__contains=search_keyword))

Q()

DB 쿼리에서 or조건을 쓰고싶을때 사용



profile
아닐지

0개의 댓글