我有以下模型,其中每个项目都有一组特定的权限。
class Bank(models.Model):
name = models.CharField(max_length=255, unique=True)
def __unicode__(self):
return self.name
class Project(models.Model):
name = models.CharField(max_length=255, null=False)
launch_date = models.CharField(max_length=20, null=False)
possession_date = models.CharField(max_length=20, null=False)
bank = models.ManyToManyField('Bank')
def __unicode__(self):
return self.name
class Permissions(models.Model):
name = models.CharField(max_length=255)
def __unicode__(self):
return self.name
class ProjectPermission(models.Model):
project = models.ForeignKey('Project')
permission = models.ForeignKey('Permissions')
value = models.CharField(max_length=255)
def __unicode__(self):
return self.project.name我想将数据从csv导入/导出到此模型。如何在Resource Admin子类中引用项目模型中的权限?
我可以通过以下方式访问权限
project.projectpermission_set.all()如果project是Project对象。
发布于 2015-07-03 16:26:17
回答你的问题
如何从项目模型引用权限?
如果要对筛选权限的Project objects进行查询,请使用:
Project.objects.filter(projectpermission__permissions__name='whatevervalue').反之,查询项目上的权限对象过滤:
Permissions.objects.filter(projectpermission__project__name='whatever')有关如何更方便地命名关系的详细信息,请参阅this
发布于 2019-08-05 20:26:16
我重写了ModelResources的after_row方法来解析和创建反向相关的模型。在我的例子中,它运行得很好。
发布于 2021-08-31 14:04:58
使用dehidrate_permissions,然后,正如@Pynchia所说的那样,
Project.objects.filter(projectpermission__permissions__name='whatevervalue').https://stackoverflow.com/questions/31201025
复制相似问题