2017-10-13 28 views
2
def search(request): 
    query = request.GET.get('q') 
    .... 
    .... 
    return render(request, 'search.html', {'list': list}) 

フォームはこのようになりませ初期データは、ジャンゴ:検索機能

<form method="get" action="{% url 'new:search' %}"> 
    <input type="text" name="q" value="{{ request.GET.q }}"> 
    <input type="submit" value="Search" /> 
</form> 

すべてがここに細かい作業していないが、ユーザが単に「検索」ボタンを押すと、それは代わりに何もしないのすべてのデータが表示されている場合。

したがって、初期データを入力せずに検索ボタンを直接押すと、この検索機能は何も行われません。

+0

**クエリ**を調べるには、何らかのif文が必要です。適切な検索用語であれば、検索を続行します。それが空の場合、検索を実行しないでください。 – Kyle

+0

def関数をすべて入れてください –

答えて

1

あなたが提供した機能に基づいて、listは「すべてのデータ」である必要があります。

def search(request): 
    q = request.GET.get('q', None) 
    if not q: 
     return render(request, 'search.html', {'list': []}) 
    else: 
     .... 
    return render(request, 'search.html', {'list': list}) 
+0

うわー、完璧にうまく動作します。ありがとうございます :) –