Django自定义权限无法识别?

时间:2016-03-29 22:27:39

标签: python django forms web permissions

我的meta中有自定义权限:

class Meta(): #extra bit of info
    model = User
    permissions = (
        ("has_uploaded", ("Has uploaded")),
        ("is_authenticated", ("Is authenticated")),
    )
    fields = ('email','emailConfirm','password1','biography','research_place','studies')

然而,当我尝试做

is_auth_perm = Permission.objects.get(codename='is_authenticated')
request.user.user_permissions.add("is_auth_perm")

在我的视图中,即使我执行了迁移和syncdb,也会收到权限不存在的错误。我做错了什么?

1 个答案:

答案 0 :(得分:1)

首次初始化数据库后,您是否在模型中添加了权限?如果是这样,即使您迁移,新权限也不会自动添加到数据库中。

要添加新权限,您可以使用update_permissions包中的manage.py django-extensions命令。