Я хочу реализовать автоматическое создание группы пользователей, и добавление пользователя в эту группу в Django

Я хочу реализовать автоматическое создание группы пользователей, и добавление пользователя в эту группу в Django, при первом запуске проекта, в чистой БД.

Сейчас приходится вручную создавать группы пользователей, назначать имена групп и их привилегии.

На просторах интернета нашел это решение, но оно не совсем подходит для меня

Что уже имеется: Модель Author

    class Author(models.Model):
author_user = models.OneToOneField(User, on_delete=models.CASCADE, verbose_name=_(
    'The user who becomes the author'))
rating = models.SmallIntegerField(default=0, verbose_name=_('Authors rating'))




def update_rating(self):
    postRat = self.post_set
    pRat = 0
    pRat += postRat.get('postRating')

    commentRat = self.author_user.comment_set
    cRat = 0
    cRat += commentRat.get('commentRating')

    self.ratingAuthor = pRat * 3 + cRat
    self.save()

def __str__(self):
    return str(self.author_user)

class Meta:
    verbose_name = _('Author')
    verbose_name_plural = _('Authors')

Пустая группа пользователей, возможность вручную добавить пользователя в модель автора, кнопка на главной странице, которая появляется в том случае, если пользователь авторизован, и еще не является автором. (но она не работает)

views.py

    @login_required
    def upgrade_me(request):
       user = request.user
       authors_group = Group.objects.get(name='authors')
       if not request.user.groups.filter(name='authors').exists():
          authors_group.user_set.add(user)
       return redirect('/')

Админ панель


Ответы (0 шт):