首页 > 解决方案 > Django授予外键对象权限

问题描述

我有一个Image带有外键的模型Album。AUser可以对 具有编辑或只读权限AlbumAlbum具有编辑权限的用户如何Images在此下进行编辑Album

Django中是否有一种简单的方法来授予用户对外键对象的权限?

标签: djangopython-3.xforeign-keys

解决方案


从您的评论中,我了解到您使用 django-guardian。一种选择是定义如下所述的函数(或者可能作为专辑类函数?)

from guardian.shortcuts import assign_perm

def update_album_permission(album, user, permission):
    assign_perm(permission + '_album', user, album)
    for image in album.images.all():
        assign_perm(permission + '_image', user, image)

然后,您需要确保始终通过此界面更新用户权限。


推荐阅读