import datetime from django.utils import timezone from web.models import Event start_date = timezone.now() # This should always be the first of a month or the day after the last event's end date end_date = None event_duration = 7 events_to_create = 100 participants = 5 current_month = start_date.strftime('%B') current_month_count = 1 # change this to +1 of whatever the last band practice is for i in range(events_to_create): if start_date.strftime('%B') != current_month: current_month = start_date.strftime('%B') current_month_count = 1 end_date = start_date + datetime.timedelta(days=event_duration) name = f'[BP] {current_month} {current_month_count}' e = Event( start_date=start_date, end_date=end_date, name=name, participants=participants ) e.save() start_date = end_date + datetime.timedelta(days=1) current_month_count += 1