基本的なクエリ検索を行いたい。フィールドcity
とarea
を使用して、データベースの参照を実行したいとします。Qを使用したDjangoクエリ参照正しい結果を返さない
ユーザーが検索フィールドに市区町村を入力すると結果が返されます。また、ユーザーが都市またはエリアを入力した場合は、結果を返す必要があります。
検索フィールドに市区町村を入力すると、次のコードが返されず、データベースに保存されたクエリに関連するオブジェクトがあります。代わりに '結果なし'を返します。
def my_search(request):
try:
q= request.GET['q']
hots= Place.objects.filter(Q(city__icontains=q)&Q(area__icontains=q))
c_hos=hots.count()
return render(request, 'search/own_search.html',{'hots':hots, 'q':q, 'c_hos':c_hos})
except KeyError:
return render(request, 'search/own_search.html')
は私も|
を使用してみました、それがどんな結果を返さないときI入力フィールドで一緒に都市と地域。
私には何が欠けていますか?フィルタの一般的なすべてのkwargsから()で
この 'Q(city__icontains = q)&Q(area__icontains = q)'は 'Q(city__icontains = q)&& Q(area__icontains = q)'でなければなりません。これはあなたの質問がうまくいかないところです。 –
構文が無効です! – YoYo