django中的基本对象级权限(1.2+)

django-bop的Python项目详细描述


django bop为django 1.2和 稍后。它基于Django Adventarticle“对象权限” 弗洛里安·阿波罗。

虽然有一些other权限后端,但我希望 与现有Django紧密匹配的简单(R)后端 功能。

功能

Django Bop提供了几种机制来管理和检查 对象权限:

  • bop.admin.objectadmin
  • bop.forms.inline_permissions_form_factory
  • api.grant和api.revoke
  • bop.backends.objectbackend
  • ifhasperm templateTag
  • bop.managers.userobjectmanager
  • bop.managers.objectPermissionManager

还有兴趣:

  • 有_model_烫发

安装

在(虚拟)环境中安装:

$ pip install django-bop

如果您还没有安装south:

$ pip install South

将“bop”(和south)添加到您在settings.py中安装的应用程序中:

INSTALLED_APPS = (
  ...
  'south',
  'bop',
)

在settings.py中指定身份验证后端:

AUTHENTICATION_BACKENDS = (
      'django.contrib.auth.backends.ModelBackend',
      'bop.backends.ObjectBackend',
)

如果您(可选)要授予匿名用户权限,请 应执行以下操作:

  1. 将用户添加到contrib.auth.models.user以表示匿名用户 (例如,通过管理员)。给它一个合适的名字(anon/ 匿名)这样在分配权限时很容易识别。

  2. 将匿名用户id添加到settings.py:

    ANONYMOUS_USER_ID = 2
    

如果,除此之外,你还可以选择支持 为匿名用户建模权限,可以添加 匿名模型后端:

AUTHENTICATION_BACKENDS = (
    'django.contrib.auth.backends.ModelBackend',
    'bop.backends.AnonymousModelBackend',
    'bop.backends.ObjectBackend',
)

完成所有配置后,更新数据库:

$ ./manage.py migrate bop

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java DB2查看最近执行的命令   java正则表达式如何只匹配数字后的字符,而不在匹配模式中包含数字   java是否可以使用Jmh运行基于时间的预热阶段?   java必须输入两次输入,扫描仪才能读取   java如何使用一个或多个类方法设置多个类字段,而这些类方法并不专门引用任何字段?   java Quartz的CronTrigger每24小时一次,如午夜   java字符串索引超出边界异常?   java FXMLLoader找不到fxml文件Maven项目   java Eclipse Indigo在安装m2ewtp插件时遇到问题   java如何为连接池配置Hibernate、Spring和ApacheDBCP?   java netbeans:类中的类路径。福奈姆   javajmx及其在Tomcat内部Docker上的调试   java HTTP状态404 tomcat 7   Java:String split():我希望它在末尾包含空字符串   java我应该使用枚举集吗?   Java StringTokenizer如何查找段落结尾?