1

フォームから投稿データにアクセスしようとしています。以下は私の見解です

def retrieve_emails(request):
    if request.method == 'POST':
        print request.POST, ">>>>>>>>>>>>>>>>POST"
        if request.POST.has_key('invite'):
            print request.POST['invite'],"------------------> all values"
    return render_to_response('response.html', context_instance=RequestContext(request))

結果

<QueryDict: {u'csrfmiddlewaretoken': [u'GoxxxxxxxxDxxxxxxopg'], u'invite': [u'<steve.b@gmail.com>', u'<kotup@gmail.com>']}> >>>>>>>>>>>>>>>>POST

<kotup@gmail.com> ------------------>all values

上記の結果からわかるように、 を印刷するとemailsキーのリストを取得できますが、上記のコードのようにキーにアクセス/印刷しようとすると、inviterequest.POSTinviteemaillist

なぜそれが起こっているのか、なぜメールのリストではなく1つのメールしか返されないのか、誰か教えてください。

4

1 に答える 1

4

getlist()を使用してすべての値を取得する必要があります。そうしないと、最後の値しか取得できません。したがって、次のものが必要です。

request.POST.getlist('invite')

それが役に立てば幸い。

于 2013-08-19T11:30:18.413 に答える