def v_user_create(): form = UserCreateForm() form.roles.choices = possible_roles if request.method == 'POST' and form.validate_on_submit(): a_user = UserApi() input_data = { 'email': form.email.data, 'password': form.password.data, 'roles': form.roles.data, 'username': form.email.data } try: new_user = a_user.create(input_data) except DatabaseItemAlreadyExists as e: flash('A user called {0} already exists.'.format(input_data['email'])) return render_template('admin/user/create.html', form=form) except RequiredAttributeMissing as e: flash('A required form element was not submitted: {0}'.format(e)) return render_template('admin/user/create.html', form=form) except Exception as e: # Remove this after debugging #flash('An unexpected error occurred: {0}'.format(e)) flash('An unexpected error occurred.') return render_template('admin/user/create.html', form=form) else: return redirect(url_for('.v_user_list')) return render_template('admin/user/create.html', form=form)