我正在寻找实现用户权限的最佳方式,以允许用户编辑特定的模型实例。
例如,我有两个模型:
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()
现在我的操作员是我的内置Django用户。我想为这些用户创建组,以便他们只能添加/删除/编辑允许的ProgramSchedules。另外,我想将这些用户的组添加到管理面板。
感谢。
答案 0 :(得分:12)
您正在寻找对象权限实施。这里有一个很好的比较: http://djangopackages.com/grids/g/perms/
无耻插头: 这是一个非常受欢迎的每个对象权限应用程序的分支:http://github.com/azizmb/django-authority
答案 1 :(得分:5)
如果我告诉你,你需要实现的是Django中的行级权限。如果它有帮助,请看看这个。 http://code.djangoproject.com/wiki/RowLevelPermissionsDeveloper
答案 2 :(得分:4)
我建议使用Django Guardian作为对象级权限。