Не работает тестовая установка и удаление базы данных Django (PostgreSQL) для групп пользователей

В настройках у меня есть:

    new_group, created = Group.objects.get_or_create(name='Sales Manager')
    SALES_MANAGER = 1
    new_group, created = Group.objects.get_or_create(name='Team')
    TEAM = 2

Существует пять таких групп. Затем я использую эти переменные следующим образом:

    user.groups.add(TEAM)

В разрыве с:

    Group.objects.get(name='Team').delete()

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

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

Я обнаружил, что проблема заключается в том, что auth_group_id_seq не сбрасывается (и не должен сбрасываться), когда я удаляю группы.

Я рассматривал идею восстановления auth_group_id_seq в моем коде, но оказалось проще и, я полагаю, мудрее, настроить мое тестирование следующим образом:

    new_group, created = Group.objects.get_or_create(name='Sales Manager')
    SALES_MANAGER = new_group.id
    new_group, created = Group.objects.get_or_create(name='Team')
    TEAM = new_group.id

Теперь тестовым пользователям присваиваются правильные группы.

Вернуться на верх