skip to navigation
skip to content

Not Logged In

rest_toolkit 0.6

REST toolkit

rest_toolkit is a Python package which provides a very convenient way to build REST servers. It is build on top of Pyramid, but you do not need to know much about Pyramid to use rest_toolkit.

Quick example

This is a minimal example which defines a Root resource with a GET view, and starts a simple HTTP server. If you run this example you can request http://localhost:8080/ and you will see a JSON response with a status message.

from rest_toolkit import quick_serve
from rest_toolkit import resource


@resource('/')
class Root(object):
    def __init__(self, request):
        pass


@Root.GET()
def show_root(root, request):
    return {'status': 'OK'}


if __name__ == '__main__':
    quick_serve()

Changelog

0.6 - November 4, 2014

  • Make sure controllers for resource whose path do not end in a slash are reachable. This fixes issue 12.
  • Fix mismatch between code and documentation: use request_method as parameter name for the controller decorator.

0.5 - October 24, 2014

  • Allow overriding the request method for controllers. This fixes issue 10.
  • Add read_permission, update_permission and delete_permission options to the resource decorator to set permissions for default views. This fixes issue 8.
  • Rely on fixtures provided by pyramid_sqlalchemy for our SQL-related tests.
  • Preserve headers when converting a HTTP response to JSON. This fixes issue 6.
  • The route name for a resource can now be configured with a route_name parameter for the resource decorator.

0.4.1 - July 18, 2014

  • Make sure all raised HTTP exceptions are converted to JSON responses.

0.4 - July 18, 2014

This releases focuses on improving the documentation and fixing problems in the SQL extension.

  • Fix several errors in the SQLResource defaults views.
  • Configuring the SQL extension is no longer necessary if you use pyramid_sqlalchemy to handle SQLAlchemy integration.
  • Travis is now setup to automatically run tests on CPython 2.7, CPython 3.3, CPython 3.4 and PyPy.
  • Fix Python 3 compatibility problem in the generic error view.
  • Drop explicit Python 2.6 support. The tests use too many set literals to make Python 2.6 worthwile.
  • Modify EditableResource to not inherit from ViewableResource. This makes the separation between editing and viewing explicit, and works around the inability of Python to handle the inheritance schemes where a base classes is used multiple times.
  • Remove the default value for replace in EditableResource.updat_from_dict(). This did not serve a useful purpose, and could be confusing.
  • Set self.request in SQLResource constructor.

0.3 - July 11, 2014

This release fixes several critical errors in the SQL extension:

  • Fix the invoction of the context query.
  • Return not-found error from SQLResource instead of an internal error when no SQL row could be found.
  • Do not enable default views for SQLResource automatically. This should be an explicit decision by the user.

0.2.2 - July 11, 2014

  • Fix several errors in SQL extension.

0.2.1 - July 10, 2014

  • Add a MANIFEST.in to the source distribution installable.

0.2 - July 9, 2014

  • Several demos showing how to use rest_toolkit with AngularJS have been added.
  • Support for default DELETE, GET, PATCH and PUT views has been added.
  • Various documentation fixes and improvements.

0.1 - Released 24 June, 2014

This is the first release.

 
File Type Py Version Uploaded on Size
rest_toolkit-0.6.tar.gz (md5) Source 2014-11-04 26KB
  • Downloads (All Versions):
  • 29 downloads in the last day
  • 127 downloads in the last week
  • 252 downloads in the last month