如何允许Flask-Admin接受JSON以创建记录

时间:2016-09-11 19:52:32

标签: python json flask python-requests flask-admin

我想知道是否可以使用Flask-Admin与python requests库在脚本中创建数据库中的新记录。一个例子就是这样:

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': 'test@test.com'}

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

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

我已经尝试过了, 在数据库中成功创建了新的user记录,但记录中的所有字段都是null。是否需要更改配置设置以允许此类行为?我无法在Flask-Admin文档中找到讨论此类用法的文档。

1 个答案:

答案 0 :(得分:0)

您正在发送表单数据,但您也说内容类型是JSON。如果您实际上是在发送JSON数据,则需要拨打json.dumps,或者通过json=而不是data=。只需删除标题并发送表单数据,因为它显然足以处理您发送的数据并且Flask-Admin会识别它。