[Checkins] SVN: z3c.form/trunk/ Folded duplicate code in ``z3c.form.datamanager.AttributeField`` into a single property.
Michael Howitz
mh at gocept.com
Tue Oct 13 14:37:56 EDT 2009
Log message for revision 105055:
Folded duplicate code in ``z3c.form.datamanager.AttributeField`` into a single property.
Changed:
U z3c.form/trunk/CHANGES.txt
U z3c.form/trunk/src/z3c/form/datamanager.py
-=-
Modified: z3c.form/trunk/CHANGES.txt
===================================================================
--- z3c.form/trunk/CHANGES.txt 2009-10-13 18:25:05 UTC (rev 105054)
+++ z3c.form/trunk/CHANGES.txt 2009-10-13 18:37:56 UTC (rev 105055)
@@ -13,10 +13,13 @@
- Bug: Replace dots with hyphens when generating form id from its name.
-- Refactored OutputChecker to its own module to allow using
- ``z3c.form.testing`` without needing to depend on ``lxml``
+- Refactored OutputChecker to its own module to allow using
+ ``z3c.form.testing`` without needing to depend on ``lxml``.
+- Folded duplicate code in ``z3c.form.datamanager.AttributeField`` into a
+ single property.
+
Version 2.1.0 (2009-07-22)
--------------------------
Modified: z3c.form/trunk/src/z3c/form/datamanager.py
===================================================================
--- z3c.form/trunk/src/z3c/form/datamanager.py 2009-10-13 18:25:05 UTC (rev 105054)
+++ z3c.form/trunk/src/z3c/form/datamanager.py 2009-10-13 18:37:56 UTC (rev 105055)
@@ -42,14 +42,18 @@
self.context = context
self.field = field
- def get(self):
- """See z3c.form.interfaces.IDataManager"""
+ @property
+ def adapted_context(self):
# get the right adapter or context
context = self.context
if self.field.interface is not None:
context = self.field.interface(context)
- return getattr(context, self.field.__name__)
+ return context
+ def get(self):
+ """See z3c.form.interfaces.IDataManager"""
+ return getattr(self.adapted_context, self.field.__name__)
+
def query(self, default=interfaces.NO_VALUE):
"""See z3c.form.interfaces.IDataManager"""
try:
@@ -68,25 +72,18 @@
self.context.__class__.__module__,
self.context.__class__.__name__))
# get the right adapter or context
- context = self.context
- if self.field.interface is not None:
- context = self.field.interface(context)
- setattr(context, self.field.__name__, value)
+ setattr(self.adapted_context, self.field.__name__, value)
def canAccess(self):
"""See z3c.form.interfaces.IDataManager"""
- context = self.context
- if self.field.interface is not None:
- context = self.field.interface(context)
+ context = self.adapted_context
if isinstance(context, Proxy):
return canAccess(context, self.field.__name__)
return True
def canWrite(self):
"""See z3c.form.interfaces.IDataManager"""
- context = self.context
- if self.field.interface is not None:
- context = self.field.interface(context)
+ context = self.adapted_context
if isinstance(context, Proxy):
return canWrite(context, self.field.__name__)
return True
More information about the checkins
mailing list