mirror of
https://gitlab.com/animath/si/plateforme.git
synced 2025-06-24 16:20:32 +02:00
Move apps in main directory
Signed-off-by: Emmy D'Anello <emmy.danello@animath.fr>
This commit is contained in:
51
registration/migrations/0004_volunteer_admin.py
Normal file
51
registration/migrations/0004_volunteer_admin.py
Normal file
@ -0,0 +1,51 @@
|
||||
# Generated by Django 3.2.18 on 2023-02-19 22:13
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from django.db import migrations, models
|
||||
from django.db.models import F
|
||||
|
||||
|
||||
def merge_admins(apps, schema_editor):
|
||||
AdminRegistration = apps.get_model('registration', 'AdminRegistration')
|
||||
VolunteerRegistration = apps.get_model('registration', 'VolunteerRegistration')
|
||||
db_alias = schema_editor.connection.alias
|
||||
AdminRegistration.objects.using(db_alias).update(admin=True)
|
||||
for admin in AdminRegistration.objects.all():
|
||||
admin.professional_activity = admin.role
|
||||
admin.polymorphic_ctype_id = ContentType.objects.get_for_model(VolunteerRegistration).id
|
||||
admin.save()
|
||||
|
||||
|
||||
def separate_admins(apps, schema_editor):
|
||||
AdminRegistration = apps.get_model('registration', 'AdminRegistration')
|
||||
VolunteerRegistration = apps.get_model('registration', 'VolunteerRegistration')
|
||||
for admin in VolunteerRegistration.objects.filter(admin=True).all():
|
||||
admin.delete()
|
||||
AdminRegistration.objects.create(user=admin.user,
|
||||
professional_activity=admin.professional_activity,
|
||||
role=admin.professional_activity)
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
dependencies = [
|
||||
('participation', '0003_alter_team_trigram'),
|
||||
('registration', '0003_alter_participantregistration_zip_code'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='volunteerregistration',
|
||||
name='admin',
|
||||
field=models.BooleanField(
|
||||
default=False,
|
||||
help_text="An administrator has all rights. Please don't give this right to all juries and volunteers.",
|
||||
verbose_name='administrator'),
|
||||
),
|
||||
migrations.RunPython(
|
||||
merge_admins,
|
||||
separate_admins,
|
||||
elidable=True,
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='AdminRegistration',
|
||||
),
|
||||
]
|
Reference in New Issue
Block a user