我使用python创建api休息,我得到一个 put ,我想用新信息更新我的表,我的代码是:
db_connect = create_engine('sqlite:///info')
class UserId(Resource):
def __init__(self):
self.conn = db_connect.connect()
def put(self,id):
user = unicode(request.data)
user = json.loads(user)
query = self.conn.execute( update user
set email= user['email'],
firstName = user['firtsName'],
lastName = user['lastName'],
description = user['description'],
salaryClaims = user['salaryClaims']
where id=id)
return {'status':'success'}
当我跑回来时:
File "server.py", line 44 query = self.conn.execute( update user
^
有人知道为什么不工作?
答案 0 :(得分:1)
您需要引用SQL并使用参数:
query = self.conn.execute("""update user
set email = ?,
firstName = ?,
lastName = ?,
description = ?,
salaryClaims = ?
where id = ?""", [user['email'], user['firtsName'], user['lastName'], user['description'], user['salaryClaims'], id])