多组织django授权插件和对象级权限设置
django-trusts的Python项目详细描述
Django信托
[![文档](https://readthedocs.org/projects/django-trusts/badge/)](http://django-trusts.readthedocs.org)[![ci](https://travis-ci.org/beedesk/django-trusts.svg?branch=master)](https://travis-ci.org/beedesk/django-trusts)[![覆盖范围](https://coveralls.io/repos/github/beedesk/django-trusts/badge.svg?branch=master)](https://coveralls.io/github/beedesk/django-trusts?branch=master)[![版本](https://badge.fury.io/py/django-trusts.svg)](https://pypi.python.org/pypi/django-trusts)
用于多个组织和对象级权限设置的Django授权加载项
简介
django-trusts是django内置授权的附加组件。它力求成为一个minimal实现,只添加了一个概念trust,以便为一个django项目启用可维护的每对象权限设置,该项目托管具有单个用户命名空间的多个组织的用户。
trust是一种关系,根据这种关系,创建者[settlor]可以对特定用户[trustee(s)]或group(s)进行内容访问。内容可以是
django-trusts还努力成为一个可伸缩的解决方案。权限检查通过设计卸载到数据库中,并且实现将数据库命中率降至最低。在request user的生命周期中,每个trust缓存权限。如果一个项目的请求生命周期将大多数选中的内容解析为一个或几个trusts,这应该是非常典型的情况,那么这个设计应该是性能方面的赢家。对单个内容或QuerySet执行权限检查。
django-trusts支持django的内置用户模型has_perms()/has_perms(),并且不提供任何附加功能。
测试
运行单元测试:
` pip install virtualenv virtualenv venv/ source venv/bin/activate python setup.py test `