[Erp5-report] r18747 - in /erp5/trunk/products/ERP5Form: Form.py ProxyField.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Jan 16 16:48:18 CET 2008


Author: yusei
Date: Wed Jan 16 16:48:11 2008
New Revision: 18747

URL: http://svn.erp5.org?rev=18747&view=rev
Log:
To use field id and argument id were not enough to generate unique key.
So I added field's oid in addition.

Modified:
    erp5/trunk/products/ERP5Form/Form.py
    erp5/trunk/products/ERP5Form/ProxyField.py

Modified: erp5/trunk/products/ERP5Form/Form.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Form/Form.py?rev=18747&r1=18746&r2=18747&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Form/Form.py (original)
+++ erp5/trunk/products/ERP5Form/Form.py Wed Jan 16 16:48:11 2008
@@ -123,7 +123,9 @@
       # Proxyfield stores the "real" field in the request. Look if the
       # corresponding field exists in request, and use it as field in the
       # TALES context 
-      field = REQUEST.get('field__proxyfield_%s_%s' % (field.id, id), field)
+      field = REQUEST.get(
+        'field__proxyfield_%s_%s_%s' % (field.id, field._p_oid, id),
+        field)
 
     kw['field'] = field
 
@@ -259,7 +261,9 @@
 def get_value(self, id, **kw):
   REQUEST = get_request()
   if REQUEST is not None:
-    field = REQUEST.get('field__proxyfield_%s_%s' % (self.id, id), self)
+    field = REQUEST.get(
+      'field__proxyfield_%s_%s_%s' % (self.id, self._p_oid, id),
+      self)
   else:
     field = self
 

Modified: erp5/trunk/products/ERP5Form/ProxyField.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Form/ProxyField.py?rev=18747&r1=18746&r2=18747&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Form/ProxyField.py (original)
+++ erp5/trunk/products/ERP5Form/ProxyField.py Wed Jan 16 16:48:11 2008
@@ -594,8 +594,12 @@
     field = self
     proxy_field = self.getTemplateField()
     if proxy_field is not None and REQUEST is not None:
-      field = REQUEST.get('field__proxyfield_%s_%s' % (self.id, id), self)
-      REQUEST.set('field__proxyfield_%s_%s' % (proxy_field.id, id), field)
+      field = REQUEST.get(
+        'field__proxyfield_%s_%s_%s' % (self.id, self._p_oid, id),
+        self)
+      REQUEST.set(
+        'field__proxyfield_%s_%s_%s' % (proxy_field.id, proxy_field._p_oid, id),
+        field)
 
     # Don't use cache if field is not stored in zodb, or if target field is
     # defined by a TALES




More information about the Erp5-report mailing list