def register_view(request): """ Handle user registration :param request: Request to handle """ context = {} if request.method == 'POST': # handle submitted registration forms # TODO refactor RegisterForm creation to somewhere else form = RegisterForm(request.POST) if form.is_valid(): data = form.cleaned_data # TODO verify user was actually created try: create_new_user(data) except IntegrityError: form.add_error('username', 'Username taken.') else: user = authenticate(username=data.get('username'), password=data.get('password')) login(request, user) return redirect('index') else: # display blank form form = RegisterForm() context['form'] = form # assemble page title title_elements = [_('REGISTRATION')] create_page_title(context, title_elements) return render(request, 'register.html', context)
def create_some_users(): return [create_new_user(user_data) for user_data in SAMPLE_USER_DATA]