Django: основанный на группе пример полномочий / документы?

Добрая душа может указать на меня на некоторую хорошую документацию или примеры кода при установке основанных на группе полномочий с Django? Мои требования довольно просты - я просто должен позволить/запретить функциональность на основе того, каким группам пользователь принадлежит.

5
задан Parand 18 February 2010 в 20:15
поделиться

1 ответ

Вот базовый пример.

См: http://www.thinkjson.com/group-permissions-in-django/

Прежде всего, допустим, у вас есть модель под названием Report.

class Report(models.Model):
    name = models.CharField(max_length=100)
    contents = models.TextField(blank=True)
    authorized_groups = models.ManyToManyField('ReportGroup', null=True, blank=True, related_name='report_groups')    
    def __str__(self):
        return self.name

Вы можете создать промежуточную модель к модели User для обработки групповых разрешений:

class ReportGroup(models.Model):
    name = models.CharField(max_length=100)
    authorized_users = models.ManyToManyField(User, null=True, blank=True, related_name='report_users')
    def __str__(self):
        return self.name

Теперь, когда вы редактируете отчет в админке Django, вы можете назначить групповые разрешения на отчет. Эти группы могут быть назначены как Report Groups в админке Django, что позволит вам одним выстрелом выбрать, кто принадлежит к той или иной группе.

3
ответ дан 15 December 2019 в 06:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: