0

我添加了一个包含以下权限的 Meta 类,但我不知道它是仅通过将它们放在 Meta 类中添加,还是我需要添加一些东西或以某种方式分配它们。这是我的代码:

class Contractor(models.Model): 
    contractor_verified = models.BooleanField(default=False)    
    Employer = models.OneToOneField(Employer)
    job_title = models.CharField(max_length=50)
    name = models.CharField(max_length=250)

    class Meta:
        permissions = (
        ("permission", "perm"),
        ("bid", "bid"),
        ("send_request_to_verifier", "send_request_to_verifier"),
        ("gain_points", "gain_points"),
        ("loose_points", "loose_points"),
        )

如果有任何不清楚的地方,我很抱歉。我只需要有关如何向不是 Django User 实例的对象添加自定义权限的帮助

4

1 回答 1

0

django 权限系统开箱即用,仅支持用户和组模型权限。来自关于对象权限的 django 文档:https ://docs.djangoproject.com/en/1.3/topics/auth/#handling-object-permissions

Django 的权限框架为对象权限奠定了基础,尽管核心中没有实现它。这意味着检查对象权限将始终返回 False 或空列表(取决于执行的检查)。

如果您正在寻找通用的对象级权限,这里有大量可用的包:http: //pypi.python.org/pypi ?%3Aaction=search&term=django+permissions&submit=search

其中一些只是实现模型级别的权限,还有一些让您定义每个实例的权限。

于 2012-04-25T23:58:01.590 回答