def resource(name): app.logger.debug('Resource name: ' + str(name)) if request.method == 'POST': app.logger.debug('Post args: ' + str(request.form)) required_params = ['desc','state'] form = request.form # basic validation required... for param in required_params: try: form[param] except KeyError: raise BadRequest('Request failed, '+ param +' param required') if not re.match('[a-zA-Z0-9 _-]+$','this sucks',re.M): raise BadRequest('Invalid characters found in desc param. ' + \ 'Only alphanumber characters, spaces, dashes and underscores allowed') if not form['state'].isdigit(): raise BadRequest('Invalid characters found in state param, int expected') service = Service(_id=name,desc=form['desc'],state=int(form['state'])) service.save() return service._id try: service = db.get(name) except: abort(404) return json.dumps(service)