Создайте Sub Admin в Django со специальным разрешением на основе данных - PullRequest
0 голосов
/ 26 марта 2019

Я использую Django 2.1

Я хочу создать несколько пользователей с особыми привилегиями, я называю этих пользователей «Менеджер».Что может сделать менеджер:

  1. Может войти на сайт администратора (может сделать это, сделав этого пользователя сотрудником)
  2. Может выполнять операцию CRUD ТОЛЬКО для своей команды.В базе данных я создал таблицу под названием «команда», где каждый пользователь связан с определенной командой.

Хотя нет необходимости иметь менеджера в каждой команде.Но если есть менеджер, он может выполнять вышеупомянутые операции.

Я немного озадачен тем, как этого добиться, так как на панели администратора я могу создавать разрешения и группы на основе страниц / моделей, но не типаданные (на основе команды).

Я предполагаю, что мне нужно создавать разные типы пользователей, но есть так много способов справиться с различными ситуациями, которые я не могу связать, если какой-либо из них применим к моемупрецедент.

Исследование:

  1. Путем создания отдельных таблиц для каждого пользователя: Несколько типов пользователей в Django

ИЛИ

django лучший подход для создания нескольких типов пользователей

Может быть сделано таким образом, когда мы создаем команды в базе данных и позволяем менеджеру просматривать данные команды, используя переопределение набора запросов:

https://docs.djangoproject.com/en/2.1/ref/contrib/admin/#django.contrib.admin.ModelAdmin.get_queryset

Вложенные отношения с использованием сериализаторов

Обработка различных уровней вложенности в Django REST Framework

Не могли бы вы дать мне знать, какой способ лучше всего получить?это сделано.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...