web/views/forms.py
changeset 4181 c79135c217df
parent 4167 73e649a7797d
parent 4134 40624a708dd4
child 4183 b5aa030bb2f9
--- a/web/views/forms.py	Tue Dec 22 09:27:28 2009 +0100
+++ b/web/views/forms.py	Tue Dec 22 10:27:49 2009 +0100
@@ -223,14 +223,13 @@
         """return the key that may be used to store / retreive data about a
         previous post which failed because of a validation error
         """
-        try:
+        if self.force_session_key is not None:
             return self.force_session_key
-        except AttributeError:
-            # XXX if this is a json request, suppose we should redirect to the
-            # entity primary view
-            if self.req.json_request:
-                return '%s#%s' % (self.edited_entity.absolute_url(), self.domid)
-            return '%s#%s' % (self.req.url(), self.domid)
+        # XXX if this is a json request, suppose we should redirect to the
+        # entity primary view
+        if self.req.json_request and self.edited_entity.has_eid():
+            return '%s#%s' % (self.edited_entity.absolute_url(), self.domid)
+        return '%s#%s' % (self.req.url(), self.domid)
 
     def build_context(self, formvalues=None):
         super(EntityFieldsForm, self).build_context(formvalues)