2009-12-09 114 views
14

我希望能够为某些现有用户提供我访问视图所需的自定义权限。向用户添加自定义权限

我想我需要添加新的权限到Postgres表auth_permission,但我怀疑有更高级的方式来做到这一点。在content_type的auth_permission中还有一列,我不知道它的值是什么。

这样做的正确方法是什么?

回答

22

看看如何create custom permissions在文档中。

class USCitizen(models.Model): 
    # ... 
    class Meta: 
     permissions = (
      ("can_drive", "Can drive"), 
      ("can_vote", "Can vote in elections"), 
      ("can_drink", "Can drink alcohol"), 
     ) 

然后运行manage.py syncdb

使用permission_required decorator限制对视图的访问。

+0

谢谢。这工作。最初让我困惑的是,它只是为了许可创建了一个新模型。但我想这是有道理的。 – Mitch 2009-12-09 20:32:35