问题描述
我有这个模型 我需要将权限关系模型分配给对象 TableRelation 模型,因为我想要一个模型权限
class Relation(models.Model):
title = models.CharField(max_length=100)
layer = models.ForeignKey(Layer,blank=True,null=True,on_delete=models.CASCADE)
related_from_table = models.CharField(max_length=150,default='',blank=True)
related_from_connection = models.ForeignKey(DataBaseProfile,on_delete=models.CASCADE)
related_source_field = models.CharField(max_length=150)
def __str__(self):
return self.title
class Meta:
permissions = (
('view_relate','Can view relate'),('delete_relate','Can delete relate'),('add_relate','Can add relate'),('edit_relate','Can edit relate'),)
class TableRelation(Relation):
connection = models.ForeignKey(DataBaseProfile,blank=False,on_delete=models.PROTECT)
related_table = models.CharField(max_length=150)
related_destination_field = models.CharField(max_length=150)
related_table_fields = JSONField()
related_table_fields_view = JSONField(default=dict)
form = models.OnetoOneField(Form,on_delete=models.CASCADE)
class Meta:
default_permissions = ()
class APIRelation(Relation):
class Meta:
default_permissions = ()
api_profile = models.ForeignKey(
APIProfile,on_delete=models.CASCADE)
connection = models.ForeignKey(DataBaseProfile,on_delete=models.PROTECT)
我想使用父级权限,而不是在智利模型上创建单独的权限。 例如:
from guardian.shortcuts import assign_perm
assign_perm('relates.view_relation',user,table_relate_obj)
assign_perm('relates.add_relation',table_relate_obj)
assign_perm('relates.change_relation',table_relate_obj)
assign_perm('relates.delete_relation',table_relate_obj)
在这个例子中不起作用 谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)