incorporated gen_key .
#!/usr/bin/python
from django.contrib.auth.models import User
from django.db import IntegrityError
from workshop.reg.models import Event
from workshop.reg.utils import gen_key
def create_user(email, password, firstname="", lastname=""):
""" create a user with random username and set the password.
"""
username = ('%s %s'%(firstname, lastname)).title().strip()
new_user = User.objects.create_user(username, email, password)
new_user.firstname = firstname
new_user.lastname = lastname
new_user.is_active = False
new_user.save()
return new_user
def create_event(title, desc, start_date, stop_date, created_by=None):
""" make an event and save it.
"""
new_event = Event()
new_event.title = title
new_event.description = desc
new_event.start_date = start_date
new_event.stop_date = stop_date
new_event.save()
if created_by:
new_event.organizers.add(created_by)
new_event.key = gen_key()
while True:
try:
new_event.save()
return new_event
except IntegrityError:
new_event.key = gen_key()