gpt4 book ai didi

Django admin - 允许用户访问特定对象/字段吗?

转载 作者:行者123 更新时间:2023-12-04 20:16:49 27 4
gpt4 key购买 nike

我需要为管理员进行“所有者”登录。假设我们有这个模型结构:

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一些用户是其中的一部分。 ProductPhotoTabularInlineProduct管理页面。

现在,所有者需要获得编辑权限
  • (主要目标)只有产品在product__in=user.products (所以基本上,只有他们拥有的产品)。
  • (次要目标)只有 说明 照片产品目录

  • 我将如何使用 Django 的管理/权限系统来做到这一点?

    最佳答案

    这是行(或对象)级权限。 Django 为 object permissions 提供基本支持但由您来实现代码。

    幸运的是,有一些应用程序提供了嵌入式对象级权限框架。 django-guardian 是我以前用过的。 This page在 djangopackages.com 上提供了更多您可以尝试的内容。

    关于Django admin - 允许用户访问特定对象/字段吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11138479/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com