2012-04-04 3 views
0

私はこのコードを見て、いくつか質問があります。誰かがそれが本当に役立つと説明できるならば。Djangoフォームクエリ

views.py

def search_page(request): 
    pdb.set_trace() 
    form = SearchForm() 
    bookmarks = [] 
    show_results = False 
    if 'query' in request.GET: 
     show_results = True 
     query = request.GET['query'].strip() 
     if query: 
      form = SearchForm({'query': query}) 
      bookmarks = Bookmark.objects.filter(title__icontains=query) 
    variables = RequestContext(request,{'form': form, 
             'bookmarks': bookmarks, 
         'show_results': show_results, 
         'show_tags': True, 
         'show_user': True}) 

    return render_t7tr o_response('search.html', variables) 

form.py クラスSearchForm(forms.Form): クエリ= forms.CharField(ラベル= u'Enter「を検索するためのキーワード、ウィジェット= forms.TextInput (attrs = {'size':32}))

次のコード行はどのように機能しますか?

「QUERY」の文字列がrequest.Getであるかrequest.GET

の「クエリ」の場合は?私はデバッグするとき...辞書には値が、私が与えた検索値が含まれていますが含まれています。

コードはうまく動作しますが、わかりたいと思います。

答えて

0

封じ込めテストmappingsでキーをチェックします。

key in d 

戻りTrueDは他のキーキーFalseを持っている場合。

EDIT:

Djangoは、クエリ文字列を解析し、それからrequest.GETを移入します。

+0

辞書にはどのようにKEY-'query 'が含まれていますか?私が与えたVALUEは' GOOGLE '(例)です。 – user1050619

関連する問題