Djata is a project mainly written in Python, it's free.
A Django REST Data API App
Djata is a Django application plugin that provides REST services for existing Django models with minimal but flexible configuration. Configuring a Djata REST API is comparable to configuring Django's administrative interface.
Djata views support HTTP GET, PUT, PUSH, and DELETE, with parsers
and formatters including but not limited to HTML, raw HTML for AJAX,
JSON, JSONP, URL encoding, CSV, formatted plain text, and XLS (with
the pyExcellerator
module installed), with orthogonal support
for selecting, filtering, ordering, and paginating data. Djata
becomes your new base-line for Django views, with support across
the board for the comprehensive API options you want but never
have time to write.
(If you are viewing this page on Github, you will need to visit the canonical location of this file <djata/blob/master/README.rst>
_ for the relative
hyperlinks to function properly.)
Quick Start Guide <docs/quick-start.rst>
_Configuring Djata URLs <docs/urls.rst>
_Configuring and Creating Views <docs/views.rst>
_REST Schema <docs/rest.rst>
_Template Contexts <docs/context.rst>
_Overriding Existing Templates <docs/templates.rst>
_Configuring and Creating Formatters and Parsers <docs/formats.rst>
_Roles of JSON in Djata <docs/json.rst>
_Client-side API Models <docs/api.rst>
_Installation Notes <docs/install.rst>
_Configuring Django Settings <docs/settings.rst>
_For an example Djata application, check see
Bugwar <http://github.com/fastsoft/bugwar>
_.
In future versions, Djata should support: