Как использовать таблицу auth_group в Django - PullRequest
0 голосов
/ 11 июня 2018

Я написал класс в файле views.py для добавления группы в таблицу auth_group.Но я получаю сообщение об ошибке: -

дубликат значения ключа нарушает уникальное ограничение "auth_group_name_key" ДЕТАЛИ: Ключ (имя) = () уже существует.

Подписанмой код файла views.py.

class AddGroup(APIView):
    authentication_classes = (SessionAuthentication, BasicAuthentication)
    permission_classes = (IsAuthenticated,)

    def post(self, request):
        log.debug("Getting into the function !!")
        try:

            log.debug(request.data)
            group11 = Group.objects.create()
            log.debug(group11)
            group11.save(2, str(request.data['customer']))
            # group11.save(str(request.data['customer']))
            log.debug(group11)
            return Response(request.data['customer']+' created successfully !!', status= status.HTTP_201_CREATED)

Ниже приведен мой код models.py

class MyGroup(GroupManager):
    use_in_migrations = True

    def create(self, group_name):
        # GroupManager.create(group_name)
        group = self.model(
            group_name=group_name,
        )
        group.save(using=self._db)
        return group

1 Ответ

0 голосов
/ 11 июня 2018

Вы не передаете аргумент name методу create() в AddGroup классе:

group11 = Group.objects.create(name="some_name") # here

Таким образом, каждая новая группа создается с именем empy, которое нарушает уникальное ограничение.

...