Skip to main content
Help us improve Python packaging – donate today!

An extension for ripozo and that brings HATEOAS/REST/Hypermedia apis to flask

Project Description

flask-ripozo

test status test coverage Documentation Status

This package provides a dispatcher for ripozo so that you can integrate ripozo with Flask. As with all dispatchers it is simply for getting the request arguments and appropriately routing them to the various resources for handling.

Check out the tutorial.

Or maybe the ripozo documentation.

Example

This example describes a minimal flask-ripozo application.

from flask import Flask

from flask_ripozo import FlaskDispatcher

from ripozo.decorators import apimethod
from ripozo.adapters import SirenAdapter, HalAdapter
from ripozo.resources import ResourceBase


class HelloWorldViewset(ResourceBase):
    resource_name = 'myresource'     # The name of the resource.  This will be appended to
                                      # the _namespace to complete the url.

    # The decorator indicates that the base url will be used
    # and that it will be registered for GET requests
    # a GET request to /api/myresource would be dispatched to this
    # method and handled here
    @apimethod(methods=['GET'])
    def hello(cls, request, *args, **kwargs):
        faked_response_properties = {'content': 'hello world'}
        return cls(properties=faked_response_properties)

# Create the flask application
app = Flask(__name__)

# Create the dispatcher
dispatcher = FlaskDispatcher(app, url_prefix='/api')

# Specify the valid response types
dispatcher.register_adapters(SirenAdapter, HalAdapter)

# This will register all of the apimethod decorated methods in
# this class specified.  In this case it adds the /api/myresource GET
# route to the application
dispatcher.register_resources(HelloWorldViewset)

if __name__ == '__main__':
    app.run() # Run the app

Release history Release notifications

This version
History Node

1.0.4

History Node

1.0.3

History Node

1.0.2

History Node

1.0.1

History Node

1.0.0

History Node

1.0.0b1

History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

History Node

0.1.0b6

History Node

0.1.0b5

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
flask-ripozo-1.0.4.tar.gz (9.1 kB) Copy SHA256 hash SHA256 Source None Mar 30, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page