1

Flaskで次のJSONドキュメントを作成したいとします。

{"1": {"name": "Tom"}}

return jsonify(**kwargs)Pythonでは、のような数字で始まる変数の命名が禁止されているため、単に呼び出すことはできませんでした1

Flaskを使用してそのようなJSONドキュメントを作成することは可能jsonifyですか?そうでない場合、私の回避策は何ですか?

明確化: IDでインデックス付けされたdictを含むJSONドキュメントを作成したいのですが、IDは24個の16進値(MongoDBのObjectId )の形式になっています。これは、ほとんどの場合、IDが数字で始まることを意味します。

4

2 に答える 2

4

便利に、あなたは使うことができます... **kwargs

>>> def echo(**kwargs):
...     print kwargs
...
>>> echo(**{"1":{"name": "Tom"}})
{'1': {'name': 'Tom'}}

はい、1...という名前の個々のキーワード引数を手動で指定することはできませんが、キーワード展開演算子を介して名前付きのキーワード引数を渡すことはできます。1**

于 2013-02-27T08:07:57.833 に答える
3

flask.jsonifyPythonと同じパラメーターを使用するため、パラメーターとしてaを指定し、残りを分類することdictができます。dict

@app.route('/')
def hello_world():
    # note key is an int, not just a string with leading digits
    # in your case this could be a mongodb object
    return jsonify({1: {'name': 'bob'}})

戻り値:

{
  "1": {
    "name": "bob"
  }
}
于 2013-02-27T08:17:29.920 に答える