def updateMembership(m_id):
''' PUT /api/v1/dientables/6 HTTP/1.1
{"alias" : "new table name", "capacity" : 3}
Result : {
"data": {
"capacity": 3,
"alias" : "new table name"
},
"meta": {
"code": 200,
"message": "Updated Successfully"
}
}
'''
with SessionManager(Session) as session:
try:
sql_membership = session.query(Membership).filter(Membership.id == m_id).one()
sql_membership.m_type = request.json.get('m_type', sql_membership.m_type)
sql_membership.discount = request.json.get('discount', sql_membership.discount)
#check weather the discount is between 0 and 100
if not 0 <= int(sql_membership.discount) < 100:
return jsonify(error_envelop(400, 'DataError', 'Enter the valid discount amount (0 to 100)'))
sql_membership.description = request.json.get('description', sql_membership.description)
session.commit()
return jsonify(update_envelop(200, data=request.json))
except IntegrityError:
# if name already exsits in database
return jsonify(error_envelop(400, 'Integrity Error','Name already Exists'))
except NoResultFound:
return jsonify(error_envelop(404, 'ValueError', 'Id : {0} not found'.format(m_id)))
return jsonify(error_envelop(100, 'UnknownError', 'UnknownError Found'))
#now the item is succesfulluy updated
评论列表
文章目录