在django中为用户授予“反权限”

时间:2011-11-08 11:06:35

标签: django permissions

我正在开发一个django项目,用户可以在其中发布文章并对其进行投票。但是用户不应该对他们自己的文章进行投票。目前我正在使用django-guardian的权限系统。我的想法是授予一种“反权限”,以便只有作者不能对自己的文章进行投票。

我的理由是,通过这种方式,所有权限都可以在统一协议中处理,与视图函数分开处理(而不是将条件置于其中)。如果出现这样的未来需求,可以优雅地处理它们。

但以这种方式使用“权限”在语义上看并不正确。只是想知道是否有更好的方法吗?

感谢您的帮助! :)

1 个答案:

答案 0 :(得分:1)

编写一个获取上下文的管理器,然后返回用户可以投票的对象列表。

在您的视图中使用此管理器。