mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-10 21:10:17 +02:00
61 lines
2.1 KiB
Python
61 lines
2.1 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Generated by Django 1.10.5 on 2017-03-26 20:13
|
|
from __future__ import unicode_literals
|
|
|
|
from django.db import migrations, models
|
|
import django.db.models.deletion
|
|
import json
|
|
|
|
|
|
def convert_json_to_members(apps, schema_editor):
|
|
CorpStats = apps.get_model('corputils', 'CorpStats')
|
|
CorpMember = apps.get_model('corputils', 'CorpMember')
|
|
for cs in CorpStats.objects.all():
|
|
members = json.loads(cs._members)
|
|
CorpMember.objects.bulk_create(
|
|
[CorpMember(corpstats=cs, character_id=member_id, character_name=member_name) for member_id, member_name in
|
|
members.items()]
|
|
)
|
|
|
|
|
|
def convert_members_to_json(apps, schema_editor):
|
|
CorpStats = apps.get_model('corputils', 'CorpStats')
|
|
for cs in CorpStats.objects.all():
|
|
cs._members = json.dumps({m.character_id: m.character_name for m in cs.members.all()})
|
|
cs.save()
|
|
|
|
|
|
class Migration(migrations.Migration):
|
|
dependencies = [
|
|
('corputils', '0003_granular_permissions'),
|
|
]
|
|
|
|
operations = [
|
|
migrations.CreateModel(
|
|
name='CorpMember',
|
|
fields=[
|
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
|
('character_id', models.PositiveIntegerField()),
|
|
('character_name', models.CharField(max_length=37)),
|
|
],
|
|
options={
|
|
'ordering': ['character_name'],
|
|
},
|
|
),
|
|
migrations.AddField(
|
|
model_name='corpmember',
|
|
name='corpstats',
|
|
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='members',
|
|
to='corputils.CorpStats'),
|
|
),
|
|
migrations.AlterUniqueTogether(
|
|
name='corpmember',
|
|
unique_together=set([('corpstats', 'character_id')]),
|
|
),
|
|
migrations.RunPython(convert_json_to_members, convert_members_to_json),
|
|
migrations.RemoveField(
|
|
model_name='corpstats',
|
|
name='_members',
|
|
),
|
|
]
|