def get(self, post_id=None): """Get an existing blog post or a list of existing blog posts.""" try: if post_id is not None: post_or_posts = ctrl.get_blog_post_with_id(post_id) else: post_or_posts = ctrl.get_all_blog_posts() except ctrl.BlogControlError as err: return JSendResponse.new_fail(err.message).jsonify(), 400 try: return JSendResponse.new_success(post_or_posts).jsonify(post_format=request.args.get('format', 'stripped')) except SerializationError as err: return JSendResponse.new_fail(err.message).jsonify(), 400
def put(self, post_id): """Update an existing blog post.""" try: post = ctrl.update_blog_post_with_id(post_id, request.json) except ctrl.BlogControlError as err: return JSendResponse.new_fail(err.message).jsonify(), 400 return JSendResponse.new_success(post).jsonify(post_format='stripped')
def post(self): """Create a new blog post.""" try: post = ctrl.create_new_blog_post(request.get_json()) except ctrl.BlogControlError as err: return JSendResponse.new_fail(err.message).jsonify(), 400 return JSendResponse.new_success(post).jsonify(post_format='stripped')
def delete(self, user_id): """Delete an existing user.""" return JSendResponse.new_fail('not implemented').jsonify(), 400
def handle_404(err): if hasattr(err, 'data') and err.data.get('rest', False): return JSendResponse.new_fail(str(err)).jsonify(), 404 else: return render_template('404.html', title='Not Found'), 404
def handle_error(err): return JSendResponse.new_fail('%d: %s' % (err.code, err.description)).jsonify(), err.code
def unauthorized(): return JSendResponse.new_fail('unauthorized').jsonify(), 401