django-pieguard is a simple authorization class for tastypie that uses django-guardian to handle object permissions.
Project description
django-pieguard is a simple authorization class for tastypie that uses django-guardian to handle object permissions.
This was inspired by gist https://gist.github.com/7wonders/6557760.
Requirements
Python 2.7+
Django 1.7
django-guardian 1.2.4
tastypie 0.12.1
Not tested in other versions yet.
Quickstart
Install django-pieguard:
pip install django-pieguard
Then use it in a tastypie project:
from pieguard.authorization import GuardianAuthorization from tastypie.resources import Resource from django.db import models class MyModel(models.Model): class Meta: permissions = ( ('view_mymodel', 'View my model'), ) class MyResource(ModelResource): class Meta: authorization = GuardianAuthorization # ... your other options
Notes on permissions
django-pieguard uses a special view_modelname permission to control if user can view that resource or not. As Django only creates add, change and delete permissions by default, you need to add the relevant permission on your model Meta class.
TODO
Tests
Docs
Python 3 official support
License
This work is licensed under MIT license.
History
0.0.1 (2014-11-29)
First release on PyPI.