1

Django アプリケーションを使用して GET と POST を理解しようとしていますが、次の問題が発生しています。

何かを入力してsubmitを入力すると、URLにパラメーターが渡されているのがわかるので、GETメソッドを渡しています..request.GETでさえ値にアクセスできmethod="post"ます。search_form.html

METHOD で指定した内容のみに基づいて、それがGETまたはPOST.

urls.py

urlpatterns = patterns('',url(r'^$',views.index,name='index'),
        url(r'^meta/',views.display_meta,name='meta'),
        url(r'^search-form/$',views.search_form),
                url(r'^search/$',views.search),

ビュー.py

def search(request):
    if 'q' in request.GET:
        message = 'You searched for :%r' % request.GET['q']
    else:
        message = 'You submitted an empty form'

    return HttpResponse(message)

search_form.html

<html>
<head>
    <title>Search</title>
</head>
<body>
    <form action="/search/" method="post">
        <input type="text" name="q">
        <input type="submit" value="Search">
    </form>
</body>
</html>

どんな入力でも大歓迎です。

4

1 に答える 1

0

リクエストメソッドは次の方法で確認できます。

request.META.get('REQUEST_METHOD')

ところで。検索フォームなどの一般的なビューの使用を検討する必要があります。これははるかに簡単です。

于 2013-02-22T07:35:18.640 に答える