3

コマンドライン cURL を介して次の要求を行っています。

curl -X POST http://localhost:8000/api/places/ -vvvv -d "place[name]=Starbucks"

ただし、呼び出してパラメーターにアクセスしようとすると

request.POST.getlist('place')

応答として空の配列を取得します。ORM に渡すことができるサブ辞書にアクセスするにはどうすればよいですか?

ありがとう、

ジェイミー

4

2 に答える 2

7

HTTP データ要素にサブ要素を含めることはできません。投稿したデータは、querydict に示されているように、キー「place[name]」と値「Starbucks」を持つ単一の要素として解釈されています。だからあなたはそれを得ることができますrequest.POST["place[name]"]

于 2010-07-02T19:32:12.727 に答える
0

文字列を送信しているようです。その場合は、次を試してください。

request.POST.get('place[name]')

ドロップダウン リストをシミュレートしている場合は、「place=Starbucks」を送信する必要がありますが、配列を送信しようとしている場合は、Python スクリプト内で文字列を配列に変換する必要があります。

コマンドでは、パラメーター -d が既に HTTP POST であるため、「-X POST」に乗ることができます。

curl --help
...
-d/--data <data>   HTTP POST data (H)

カールマニュアル: http://curl.haxx.se/docs/manual.html

于 2010-07-02T19:34:34.840 に答える