Tastypie is an webservice API framework for Django. It provides a convenient, yet powerful and highly customizable, abstraction for creating REST-style interfaces.
There are two primary ways of getting help. We have a mailing list hosted at Google (http://groups.google.com/group/django-tastypie/) and an IRC channel (#tastypie on irc.freenode.net) to get help, want to bounce idea or generally shoot the breeze.
Add tastypie to INSTALLED_APPS.
Create an api directory in your app with a bare __init__.py.
Create an <my_app>/api/resources.py file and place the following in it:
from tastypie.resources import ModelResource
from my_app.models import MyModel
class MyModelResource(ModelResource):
class Meta:
queryset = MyModel.objects.all()
allowed_methods = ['get']
In your root URLconf, add the following code (around where the admin code might be):
from tastypie.api import API
from my_app.api.resources import MyModelResource
v1_api = Api(api_name='v1')
v1_api.register(MyModelResource())
urlpatterns = patterns('',
# ...more URLconf bits here...
# Then add:
(r'^api/', include(v1_api.urls)),
)
Hit http://localhost:8000/api/v1/?format=json in your browser!
Tastypie requires the following modules. If you use Pip, you can install the necessary bits via the included requirements.txt:
If you choose to use Python 2.4, be warned that you will also need to grab the following modules: