def form_valid(self, form):
try:
self.object = form.save()
messages.add_message(self.request, messages.SUCCESS, "Your event has been updated.")
return super(ModelFormMixin, self).form_valid(form)
except BaseException, e:
if hasattr(e, '__iter__'):
for exc in e:
messages.add_message(self.request, messages.ERROR, "Error creating your event -- %s" % exc[1][0])
if hasattr(form, exc[0]):
form.add_error(exc[0], exc[1][0])
elif isinstance(e, UnicodeError):
field = e[1][e[1][0:e[3]].rfind('&')+1:e[1][0:e[3]].rfind('=')]
if field in form.fields:
form.add_error(field, "Please remove special characters and try again.")
messages.add_message(self.request, messages.ERROR, "Error updating your event -- You had some special characters in your %s field, please remove those and try again." % field)
return super(EventEdit, self).form_invalid(form)
评论列表
文章目录