name="example", title="Example method of action", description="Example method of action", output={"status": {"type": "string"}}, path="/resource/example", security="basic_sc" ) def example(self): return make_response(jsonify({ "result": "success" }), HTTPStatus.OK) @staticmethod def add_url_rule(_app): # TODO may can be automated by using decorators view = DummyResourceAPI.as_view('resource_api') # Dummy resource API View _app.add_url_rule('/resource', view_func=view, methods=['GET', ]) _app.add_url_rule('/resource/<action>', view_func=view, methods=['POST', ]) # Run server app = Flask(__name__) CORS(app) BindAPI.add_url_rule(app) DescriptionAPI.add_url_rule(app) DummyResourceAPI.add_url_rule(app) register_api() # app.run(host='0.0.0.0', port=8000)
app.logger.info('Creating new instance: %s' % request.data) db.session.add(instance) try: db.session.commit() except IntegrityError, error: app.logger.warning(error) abort(409) app.logger.info('Created new instance: %s' % instance.to_json()) return instance.to_json(), 201 def delete(self, id): """Delete an instance.""" instance = Instance.query.filter_by(id=id).first_or_404() app.logger.info('Delete instance: %s' % id) db.session.delete(instance) db.session.commit() return json.dumps({'id': id, 'status': 'deleted'}) def put(self, id): """Update an instance.""" instance = Instance.query.filter_by(id=id).first_or_404() app.logger.info('Update instance: %s' % id) target = Instance.from_json(request.data) instance.merge(target) db.session.commit() return instance.to_json() register_api(InstanceAPI, 'instance_api', '/instances/', pk='id', pk_type='string')
app.logger.info('Creating new application: %s' % request.data) db.session.add(application) try: db.session.commit() except IntegrityError, error: app.logger.warning(error) abort(409) app.logger.info('Created new application: %s' % application.to_json()) return application.to_json(), 201 def delete(self, id): """Delete an application.""" application = Application.query.filter_by(id=id).first_or_404() app.logger.info('Delete application: %s' % id) db.session.delete(application) db.session.commit() return json.dumps({'id': id, 'status': 'deleted'}) def put(self, id): """Update an application.""" application = Application.query.filter_by(id=id).first_or_404() app.logger.info('Update application: %s' % id) target = Application.from_json(request.data) application.merge(target) db.session.commit() return application.to_json() register_api(ApplicationAPI, 'application_api', '/application/', pk='id', pk_type='string')
from flask import jsonify from models import Anuncio from utils import register_api from django.utils import simplejson as json class AnuncioAPI(MethodView): def get(self, key): anuncios = Anuncio.all() return json.dumps([a.to_dict() for a in anuncios]) def post(self): anuncio = Anuncio() anuncio.nombre = request.form['nombre'] anucio.put() def delete(self, key): anuncio = Anuncio.get(key) return jsonify({'response' : 'ok'}) def put(self, key): pass register_api(AnuncioAPI, 'anuncio', '/anuncio/')