我想利用django-guardian
的对象权限并将特定用户的特定权限授予一个或多个 Django 用户。
我试图向我的 Process 类添加一些权限,如下所示:
class TestProcess(Process):
title = models.CharField(max_length=64)
something = models.ForeignKey(ForInheritage, null=True, on_delete=models.CASCADE)
no_approval = models.BooleanField(default=False)
approved = models.BooleanField(default=False)
def something_is_approved(self):
try:
return self.something.approved
except:
return None
class Meta:
permissions = (
('view_process', 'View Process'),
)
不幸的是,这会导致viewflow
在启动后立即抛出错误runserver
:
File "/home/me/.virtualenvs/viewflow3/lib/python3.4/site-packages/viewflow/mixins.py", line 253, in ready
self.flow_class.process_class._meta.permissions.append(
AttributeError: 'tuple' object has no attribute 'append'
我最初的计划是对类进行子类化Start
和View
流化,以改变从 .Permission
继承的函数的PermissionMixin
工作方式。但这似乎也比这更多的工作。
django-guardian
已在此处cookbook
的某个部分中提到,但目前导致 404 页面。
在进程和任务上使用监护人权限的推荐/最干净的方法是什么?