私はDjangoの初心者なので、これがばかげた質問である場合はご容赦ください。複数のフィールドがある検索フォームがあります。空ではない送信されたフィールドでクエリセットをフィルタリングしたいだけです。それ、どうやったら出来るの?クエリセットとQオブジェクトをチェーン化できることは承知していますが、チェーンから空のキーと値のペアを削除する方法がわかりません。以下がうまくいかないことは知っていますが、それは私が探しているものへの洞察を提供するかもしれないと思いました。ありがとうございました。
def art_search(request):
if request.method == 'GET':
form = AdvSearch(request.GET)
if form.is_valid():
art_name = form.cleaned_data['art_name']
art_number = form.cleaned_data['art_number']
artwork = Inventory.objects.filter(
if art_name is not u'':
Q(marketingname=art_name),
if art_number is not u'':
Q(marketingnumber=art_number)
)
return object_list(request, queryset=artwork)
else:
form = AdvSearch()
return render_to_response('art/search.html', {
'form': form,
})