Django Guardian с миграцией данных (добавление анонимного пользователя в публичную группу)
Я пытаюсь выполнить миграцию данных в приложении. Я хочу добавить анонимного пользователя (django-guardian AnonymousUser) в публичную группу. Почему-то пользователь не существует, когда я запускаю тест. В разработке он работает. Заранее спасибо.
Поскольку кажется, что анонимный пользователь создается на management init, я попытался импортировать модуль в apply_migration без успеха.
# Generated by Django 4.1 on 2022-10-19 12:11
from django.db import migrations
from guardian.utils import get_anonymous_user
from recipebook.settings import PUBLIC_GROUP_NAME
from django.contrib.auth.models import Group
def apply_migration(apps, schema_editor):
import guardian.management.__init__
public_group = Group.objects.get(
name=PUBLIC_GROUP_NAME
)
user = get_anonymous_user()
user.groups.add(public_group)
def revert_migration(apps, schema_editor):
public_group = Group.objects.get(
name=PUBLIC_GROUP_NAME
)
user = get_anonymous_user()
user.groups.remove(public_group)
class Migration(migrations.Migration):
dependencies = [
('recipebook', '0031_recipenutrition_vitamine_b3'),
('guardian', '0001_initial'),
]
operations = [
migrations.RunPython(apply_migration, revert_migration)
]