Отдельные разрешения для записей в таблице в Django Admin - PullRequest
0 голосов
/ 06 апреля 2019

Предположим, у меня есть разные пользователи в моем проекте Django и такая модель, что каждая запись принадлежит определенному пользователю.Предполагается, что пользователи имеют доступ к панели администратора.

class MyModel(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    ...

Существует ли в Django стандартный способ создания любого списка пользователей, создания и редактирования ТОЛЬКО ЕГО экземпляров MyModel в панели администратора, скрывая созданныедругими пользователями?

1 Ответ

1 голос
/ 06 апреля 2019

Вы можете переопределить набор запросов для администратора вашей модели. как это:

class MyModelAdmin(admin.ModelAdmin):
    def get_queryset(self, request):
        qs = super().get_queryset(request)
        qs = qs.filter(user=request.user)
        return qs

Это отфильтрует экземпляры на основе пользователя, которому они принадлежат.

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