django行级对象共享应用程序。

django-sharing的Python项目详细描述


Django共享

django行级共享应用程序限制django管理员中用户的内容访问。

功能

  1. 提供管理视图、更改和删除权限、限制内容访问和限制每个用户的可用操作。
  2. 按视图权限筛选ForeignKey字段。
  3. 按视图权限筛选ManyToManyField字段。
  4. 自动启用所有管理类上的共享(可选)。

安装

  1. 在python路径中安装或添加django共享。
  2. 'sharing'添加到项目的INSTALLED_APPS设置中。
  3. 'sharing.backends.SharingBackend'添加到项目的AUTHENTICATION_BACKENDS设置中。

使用量

为了让django共享限制内容访问,您的各种管理类需要包含ShareAdminMixin类。例如:

# admin.py
from django.contrib import admin
from sharing.admin import ShareAdminMixin

class ArticleAdmin(ShareAdminMixin, admin.ModelAdmin):
    pass

admin.site.register(Article, ArticleAdmin)

ShareAdminMixin是管理类定义中的第一个祖先类,这一点至关重要。

或者,您可以自动为在管理站点注册的所有模型启用共享。django共享包含一个admin_mixin_share方法,该方法将ShareAdminMixin类应用于在管理站点注册的所有模型。在url中的admin.autodiscover()之后调用方法。py:

# urls.py
from django.conf.urls.defaults import *
from django.contrib import admin

import sharing

admin.autodiscover()
sharing.admin_mixin_share()

urlpatterns = patterns('',
    (r'^admin/', include(admin.site.urls)),
)

一旦应用了ShareAdminMixin类,您的管理更改视图应该包括GroupUser共享内联线并适当地限制内容。

作者

praekelt基金会

  • 肖恩·塞普顿

更改日志

0.0.2

  1. 解决了save_模型上的类名问题。

0.0.1

  1. 初次发布。

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

推荐PyPI第三方库


热门话题
启动tyrus独立服务器时发生java ClassNotFoundException   标签中的javael评估   JavaTomcat服务器变得缓慢且无响应   java按钮导致Android应用程序“不幸关闭”   java Spring solr动态字段解析   java查看是否刚刚创建了属性文件   仅在我的安卓应用程序中使用java make phonethic键盘   使用孵化的Java10HttpClient重建HTTP流   消息太大时java AppEngine任务队列异常   使用Tomcat和数据存储远程访问器的java内存不足   如何在Java中将特定于平台的路径插入数据库的文件   安卓如何在React Native中没有reactContext的情况下从无头JS任务执行Java代码?   java将字符串转换为整数错误   java FileInputStream如何在不替换html图标的情况下读取html文件   okhttp获取java。网SocketException:当使用多线程的okhttpclient时,socket关闭   再次发送sms时gsm At命令显示忙碌(java)   java如何检查值是否至少等于列表中的一个字段?   java如何从后台bean更新jsf数据表   Java:在列表中查找组合日