def form_valid(self, form):
# create a new user for this sponsor
try:
sp = transaction.savepoint()
baseContact = form.cleaned_data["sponsorContact"]
try:
user = User.objects.get(username=form.cleaned_data["sponsorUsername"])
except User.DoesNotExist:
user = User(username = form.cleaned_data["sponsorUsername"])
user.first_name = baseContact.contactPersonFirstname
user.last_name = baseContact.contactPersonSurname
user.email = baseContact.contactPersonEmail
user.save()
profile = UserProfile(user = user)
profile.authToken = id_generator(24)
profile.save()
sponsoring = Sponsoring()
sponsoring.owner = user
sponsoring.year = getActiveYear(self.request)
sponsoring.contact = baseContact
sponsoring.package = form.cleaned_data["sponsorPackage"]
sponsoring.adminComment = form.cleaned_data["internalComment"]
sponsoring.save()
self.object = sponsoring
transaction.savepoint_commit(sp)
except Exception as e:
transaction.savepoint_rollback(sp)
raise e
return HttpResponseRedirect(self.get_success_url())
评论列表
文章目录