use baseObject() function instead of context attribute for increased flexibility (types without type interface)

git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@3674 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
helmutm 2010-01-10 17:17:25 +00:00
parent 8417ebf490
commit c8e4ec55bf

View file

@ -36,6 +36,7 @@ from cybertools.composer.schema.interfaces import IField, IFieldInstance
from cybertools.composer.schema.interfaces import fieldTypes, undefined
from cybertools.util.format import toStr, toUnicode
from cybertools.util import json
from loops.common import baseObject
from loops import util
@ -70,7 +71,7 @@ class BaseRelationFieldInstance(object):
class RelationSetFieldInstance(ListFieldInstance, BaseRelationFieldInstance):
def marshall(self, value):
return [dict(title=v.title, uid=util.getUidForObject(v.context))
return [dict(title=v.title, uid=util.getUidForObject(baseObject(v)))
for v in value]
def display(self, value):