タグ付けされた質問 「django-q」

12
Djangoビューで2つ以上のクエリセットを組み合わせる方法は?
私は構築しているDjangoサイトの検索を構築しようとしています。その検索では、3つの異なるモデルで検索しています。そして、検索結果リストのページネーションを取得するために、汎用のobject_listビューを使用して結果を表示したいと思います。しかし、そのためには、3つのクエリセットを1つにマージする必要があります。 どうやってやるの?私はこれを試しました: result_list = [] page_list = Page.objects.filter( Q(title__icontains=cleaned_search_term) | Q(body__icontains=cleaned_search_term)) article_list = Article.objects.filter( Q(title__icontains=cleaned_search_term) | Q(body__icontains=cleaned_search_term) | Q(tags__icontains=cleaned_search_term)) post_list = Post.objects.filter( Q(title__icontains=cleaned_search_term) | Q(body__icontains=cleaned_search_term) | Q(tags__icontains=cleaned_search_term)) for x in page_list: result_list.append(x) for x in article_list: result_list.append(x) for x in post_list: result_list.append(x) return object_list( request, queryset=result_list, template_object_name='result', paginate_by=10, extra_context={ 'search_term': …

13
DjangoでORクエリフィルターを動的に作成する方法
例から、複数のORクエリフィルターを確認できます。 Article.objects.filter(Q(pk=1) | Q(pk=2) | Q(pk=3)) たとえば、次の結果になります。 [<Article: Hello>, <Article: Goodbye>, <Article: Hello and goodbye>] ただし、リストからこのクエリフィルターを作成します。どうやってするか? 例えば [1, 2, 3] -> Article.objects.filter(Q(pk=1) | Q(pk=2) | Q(pk=3))
104 python  django  django-q 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.