コード例 #1
0
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)