У меня есть простая модель Django, которая выглядит примерно так:
from django.contrib.auth.models import Group
from mylogapp.models import LogType
class Log(models.Model):
responsible_group = models.ForeignKey(Group)
description = models.TextField()
log_type = models.ForeignKey(LogType)
В таблице базы данных будет несколько миллионов строк.
Разрешение на основе строк для интерфейса администратора django должнополучить реализацию.
Если текущий пользователь находится в «группе_ответственности», то ему разрешено просматривать и изменять его.
AFAIK django guardian не очень подходит для этого.См. Эту связанную страницу: https://django -guardian.readthedocs.io / en / stable / userguide / performance.html
Даже решение «Прямые внешние ключи» не соответствует.Текущая модель уже содержит все необходимое для фильтрации строк.
Как включить разрешение на основе строк для django и использовать модель журнала для проверки разрешений?