Pavel 'LEdoian' Turinsky
8 months ago
2 changed files with 53 additions and 0 deletions
@ -0,0 +1,52 @@ |
|||||
|
# Správná migrace vypadá takto: |
||||
|
# Generated by Django 3.2.23 on 2023-12-11 19:19 |
||||
|
|
||||
|
def nastav_nove_contenttypes(apps, schema_editor): |
||||
|
ContentType = apps.get_model('contenttypes', 'ContentType') |
||||
|
old_ct = ContentType.objects.filter(app_label='seminar', model='nastaveni') |
||||
|
# Pozn: tohle může být prázdné (pokud Django nedostalo signál o dokončených migracích, např. při vyrábění databáze z nuly) |
||||
|
# Ale .update to nevadí… |
||||
|
old_ct.update(app_label='various') |
||||
|
|
||||
|
def nastav_stare_contenttypes(apps, schema_editor): |
||||
|
ContentType = apps.get_model('contenttypes', 'ContentType') |
||||
|
new_ct = ContentType.objects.filter(app_label='various', model='nastaveni') |
||||
|
new_ct.update(app_label='seminar') |
||||
|
|
||||
|
class Migration(migrations.Migration): |
||||
|
|
||||
|
initial = True |
||||
|
|
||||
|
dependencies = [ |
||||
|
('seminar', '0115_alter_nastaveni_options'), |
||||
|
] |
||||
|
|
||||
|
operations = [ |
||||
|
migrations.CreateModel( |
||||
|
name='Nastaveni', |
||||
|
fields=[ |
||||
|
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
||||
|
('cena_sous', models.IntegerField(default=1000, verbose_name='Účastnický poplatek za soustředění')), |
||||
|
], |
||||
|
options={ |
||||
|
'verbose_name': 'Nastavení semináře', |
||||
|
'db_table': 'seminar_nastaveni', |
||||
|
'managed': False, |
||||
|
}, |
||||
|
), |
||||
|
migrations.RunPython(nastav_nove_contenttypes, nastav_stare_contenttypes), |
||||
|
] |
||||
|
|
||||
|
|
||||
|
|
||||
|
#Hack: zkrácení |
||||
|
def nastav_nove_contenttypes(apps, schema_editor): |
||||
|
ContentType = apps.get_model('contenttypes', 'ContentType') |
||||
|
for m in ('resitel', 'organizator', 'osoba', 'skola', 'prijemce'): |
||||
|
ContentType.objects.filter(app_label='seminar', model=m).update(app_label='personalni') |
||||
|
|
||||
|
def nastav_stare_contenttypes(apps, schema_editor): |
||||
|
ContentType = apps.get_model('contenttypes', 'ContentType') |
||||
|
for m in ('resitel', 'organizator', 'osoba', 'skola', 'prijemce'): |
||||
|
ContentType.objects.filter(app_label='personalni', model=m).update(app_label='seminar') |
||||
|
|
@ -1,4 +1,5 @@ |
|||||
Prostě zkopírovat vedle, s původními (=správnými) related names. |
Prostě zkopírovat vedle, s původními (=správnými) related names. |
||||
makemigrations |
makemigrations |
||||
|
! Doplnit hack kolem content-types |
||||
doplnit závislost na unmanage |
doplnit závislost na unmanage |
||||
migrate |
migrate |
||||
|
Loading…
Reference in new issue