Source code for squaresdb.gate.migrations.0009_add_price_2023
# Generated by Django 3.2.18 on 2023-04-22 21:03
from django.db import migrations
PRICES = dict(
normal2023={
'mit-student': (0,0),
'student': (2,2),
'full': (5,10),
},
)
[docs]
def add_prices(apps, schema_editor):
PriceScheme = apps.get_model('gate', 'DancePriceScheme')
Price = apps.get_model('gate', 'DancePrice')
FeeCat = apps.get_model('membership', 'FeeCategory')
for scheme, prices in PRICES.items():
scheme_obj, _created = PriceScheme.objects.get_or_create(name=scheme)
for feecat, (low, high) in prices.items():
feecat_obj = FeeCat.objects.get(slug=feecat)
defaults = dict(low=low, high=high)
Price.objects.get_or_create(fee_cat=feecat_obj,
price_scheme=scheme_obj,
defaults=defaults)
normal = PriceScheme.objects.get(name='normal')
normal.name = 'normal2014'
normal.active = False
normal.save()
[docs]
class Migration(migrations.Migration):
dependencies = [
('gate', '0008_attendee_time'),
('membership', '0008_personfreq'),
]
operations = [
migrations.RunPython(add_prices),
]