Skip to main content

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

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.

Release history Release notifications | RSS feed

This release

0.0.1 This release

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page