Django:为特定模型实例添加权限

Hel*_*nar 13 django django-permissions

我正在寻找实现用户权限的最佳方法,以允许用户编辑特定的模型实例.

例如,我有两个模型:

model RadioChannel(models.Model):
    name = models.CharField(max_length=150, unique= True)
    number = models.IntegerField( unique= True)

model ProgramSchedule(models.Model):
    channel = models.ForeignKey("RadioChannel")
    name = models.CharField(max_length=150, unique= True)
    start_time = models.DateTimeField()
Run Code Online (Sandbox Code Playgroud)

现在我的运营商是我的内置Django用户.我想为这些用户创建组,以便他们只能添加/删除/编辑允许的ProgramSchedules.另外,我想将这些用户的组添加到管理面板.

谢谢.

zsq*_*are 12

您正在寻找对象权限实现.这里有一个很好的比较:http: //djangopackages.com/grids/g/perms/

无耻的插件:以下是一个非常受欢迎的每个对象权限应用程序的分支:http://github.com/azizmb/django-authority


Ank*_*wal 5

如果我告诉您正确的话,您需要实现的内容在Django中称为行级权限.如果它有帮助,请看看这个.http://code.djangoproject.com/wiki/RowLevelPermissionsDeveloper


Kev*_*don 5

我建议使用Django Guardian来获取对象级权限。