2016-09-11 7 views
-1

Flask-Adminとpython requestsライブラリを使用して、スクリプトからデータベースに新しいレコードを作成できるかどうかを知りたいと思います。例は次のような次のようになります。Flask-Adminがレコード作成のためのJSONを受け入れる方法

import requests 

new_userdata = {'username': 'testuser', 'confirmed_at': None, 'login_count': 0, 'last_login_at': None, 'active': False, 'password': 'password', 'current_login_ip': None, 'last_login_ip': None, 'current_login_at': None, 'email': '[email protected]'} 

url = "http://localhost:5000/admin/user/new/" 

r = requests.post(url, data=new_userdata, headers={"content-type":"application/json") 

私はすでにこれを試みたが、それはが正常にデータベースに新しいレコードを作成userんが、レコード内のすべてのフィールドがnullあります。この種の動作を可能にするために変更する必要のある設定がありますか?この種の使用法について説明したFlask-Adminのドキュメントを見つけることができませんでした。

+0

"フォームデータ"とはどういう意味かわかりません。より具体的になりますか? – themantalope

+0

投稿リクエストを介してデータを送信する有効な方法は間違いありません:http://docs.python-requests.org/ja/master/api/?highlight=requests.post#requests.post – themantalope

+0

提案。 'headers'パラメータを取り除くことは有効でした。 – themantalope

答えて

0

フォームデータを送信していますが、コンテンツタイプがJSONであるとも言います。実際にJSONデータを送信している場合は、json.dumpsに電話するか、data=の代わりにjson=を渡す必要があります。送信しているデータを処理するためには明らかに十分であり、Flask-Adminがそれを認識するので、ヘッダーを削除してフォームデータを送信するだけです。