예제 #1
0
 async def post(self):
     form = RegistrationForm(self.request.arguments)
     if form.validate():
         usr = form.get_object()
         usr.set_password(usr.password)
         try:
             await usr.insert(self.db)
         except DuplicateKeyError:
             form.set_field_error('email', 'email_occupied')
         else:
             # user save succeeded
             self.set_current_user(usr.email)
             self.post_success()
             return
     self.post_failed(form)
예제 #2
0
def register():
    form = RegistrationForm(request.form)
    if form.validate():
        if DelhiveryUser.find_user(form.email.data):
            form.email.errors.append("Email address already registered")
            return render_template('delhivery.html',
                                   loginform=LoginForm(),
                                   registrationform=form)
        else:
            user = DelhiveryUser(email=form.email.data)
            user.first_name = form.first_name.data
            user.last_name = form.last_name.data
            role = DelhiveryHierarchy.objects.get(role=form.role.data)
            user.role = role
            user.set_password(form.password.data)
            user.save()
            flash('Successfully registered', 'success')
            return redirect(url_for('auth_views.delhivery_index'))
    return render_template("delhivery.html",
                           loginform=LoginForm(),
                           registrationform=form)