Qオブジェクトの検索に問題があります。ユーザーが複数の用語を検索すると、すべての用語が同じオブジェクトにない限り、検索で何も返されません。Django Qオブジェクトのルックアップを1つのフィルタに結合する
https://www.soledadmemorial.com/plaquesにアクセスしてDavid S Hackley
を検索すると、何も返されませんが、David S
を検索すると結果が表示されます。
(Q(first_name__icontains=query), Q(last_name__icontains=query))
のようなフィルタを組み合わせようとしましたが、エラーが発生しました。以下は私の現在のコードです。複数のオブジェクトからの検索を組み合わせることなく動作します。
...
if query:
queryset_list = queryset_list.filter(
Q(first_name__icontains=query) |
Q(last_name__icontains=query) |
Q(branch__icontains=query) |
Q(rank__icontains=query) |
Q(group__group_name__icontains=query) |
Q(veteran__name__icontains=query)
).distinct()
...
私は、クエリは、実際にはDjangoによって生成されるどのような複数のオブジェクト –
から検索を組み合わせて意味どのように取得しないの使用を検討すべきである、とあなたは何を期待していますか? – spectras