我需要为管理员创建一个“所有者”登录。假设我们有这个模型结构:
class Product(models.Model):
owner = models.ManyToManyField(User)
name = models.CharField(max_length=255)
description = models.CharField(max_length=255)
photos = models.ManyToManyField(Photo, through='ProductPhoto')
class Photo(models.Model):
order = models.IntegerField()
image = models.ImageField(upload_to='photos')
alt = models.CharField(max_length=255)
class ProductPhoto(models.Model):
photo = models.ForeignKey(Photo)
product = models.ForeignKey(Product)
我们有一个名为的组Owners
,其中一些用户是其中的一部分。这ProductPhoto
是管理页面TabularInline
上的一个。Product
现在,所有者需要获得编辑权限
(主要目标) 只有产品
product__in=user.products
(所以基本上,只有他们拥有的产品)。(次要目标) 只有产品的描述和照片
我将如何使用 Django 的管理/权限系统来做到这一点?