equal
deleted
inserted
replaced
139 fieldcls = cls_or_self.rfields.etype_get(eschema, rschema, role, tschemas[0]) |
139 fieldcls = cls_or_self.rfields.etype_get(eschema, rschema, role, tschemas[0]) |
140 kwargs = cls_or_self.rfields_kwargs.etype_get(eschema, rschema, role, tschemas[0]) |
140 kwargs = cls_or_self.rfields_kwargs.etype_get(eschema, rschema, role, tschemas[0]) |
141 if kwargs is None: |
141 if kwargs is None: |
142 kwargs = {} |
142 kwargs = {} |
143 if fieldcls: |
143 if fieldcls: |
|
144 if not isinstance(fieldcls, type): |
|
145 return fieldcls # already and instance |
144 return fieldcls(name=name, role=role, eidparam=True, **kwargs) |
146 return fieldcls(name=name, role=role, eidparam=True, **kwargs) |
145 field = guess_field(eschema, rschema, role, eidparam=True, **kwargs) |
147 field = guess_field(eschema, rschema, role, eidparam=True, **kwargs) |
146 if field is None: |
148 if field is None: |
147 raise |
149 raise |
148 return field |
150 return field |