当前位置: 首页>>代码示例>>Python>>正文


Python schema.getFieldNamesInOrder函数代码示例

本文整理汇总了Python中zope.schema.getFieldNamesInOrder函数的典型用法代码示例。如果您正苦于以下问题:Python getFieldNamesInOrder函数的具体用法?Python getFieldNamesInOrder怎么用?Python getFieldNamesInOrder使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了getFieldNamesInOrder函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: decode

def decode(dump, target=None, target_class=None):
    data = simplejson.loads(dump)
    registry = get_current_registry()

    fields = {}

    # collect all target's fields by their name
    if target:
        for interface in target.__provides__.interfaces():
            for name in getFieldNamesInOrder(interface):
                fields[name] = interface[name]

    # collect all target_class' fields by their name
    if target_class:
        for interface in target_class.__implemented__.interfaces():
            for name in getFieldNamesInOrder(interface):
                fields[name] = interface[name]

    values = {}
    for k, v in data.iteritems():
        # convert dictionary keys from unicode to str
        if isinstance(k, unicode):
            k = k.encode("utf-8")
        # convert dictionary values to proper field values
        if k in fields:
            v = registry.queryMultiAdapter(
                (fields[k], v), IFieldValue, default=v)
        values[k] = v

    return values
开发者ID:datakurre,项目名称:shaura_json,代码行数:30,代码来源:utils.py

示例2: _set_default_configuration

    def _set_default_configuration(self):
        defaults = {}
        tile_type = getUtility(ITileType, name=self.tile.__name__)
        fields = getFieldNamesInOrder(tile_type.schema)

        for name, field in getFieldsInOrder(tile_type.schema):
            order = unicode(fields.index(name))
            # default configuration attributes for all fields
            defaults[name] = {"order": order, "visibility": u"on"}
            if name == "css_class":
                # css_class, set default
                defaults[name] = field.default
            if ITextLine.providedBy(field):
                # field is TextLine, we should add 'htmltag'
                defaults[name]["htmltag"] = u"h2"
            elif INamedBlobImageField.providedBy(field):
                # field is an image, we should add 'position' and 'imgsize'
                defaults[name]["position"] = u"left"
                defaults[name]["imgsize"] = u"mini 200:200"
            elif IInt.providedBy(field):
                defaults[name][name] = field.default
            elif IDatetime.providedBy(field):
                # field is Datetime, we should add 'format'
                defaults[name]["format"] = "datetime"

        return defaults
开发者ID:collective,项目名称:collective.cover,代码行数:26,代码来源:configuration.py

示例3: format_street_address

def format_street_address(item, formatter):
    address_parts = []
    for attribute in getFieldNamesInOrder(IAddress):
        address_part = getattr(item, attribute, None)
        if address_part is not None:
            address_parts.append(address_part)
    return ", ".join(address_parts)
开发者ID:achouhans,项目名称:schooltool-2.8.5,代码行数:7,代码来源:contact.py

示例4: _normalize

    def _normalize(self):
        if self.for_ is None:
            self.for_ = self.schema

        if self.class_ is None:
            self.bases = (self.view,)
        else:
            self.bases = (self.class_, self.view)

        if self.template is not None:
            self.template = os.path.abspath(str(self.template))
            if not os.path.isfile(self.template):
                raise ConfigurationError("No such file", self.template)
        else:
            self.template = self.default_template

        self.names = getFieldNamesInOrder(self.schema)

        if self.fields:
            for name in self.fields:
                if name not in self.names:
                    raise ValueError("Field name is not in schema",
                                     name, self.schema)
        else:
            self.fields = self.names
开发者ID:zopefoundation,项目名称:zope.app.form,代码行数:25,代码来源:metaconfigure.py

示例5: __init__

 def __init__(self, context, request=None):
     self.context = context
     self.request = request
     self.datasets = []
     self.datapoints = {}
     self.schema = IFormDefinition(self.context).schema
     self.fieldnames = getFieldNamesInOrder(self.schema)
开发者ID:upiq,项目名称:uu.formlibrary,代码行数:7,代码来源:views.py

示例6: __init__

 def __init__(self, schema, **kwargs):
     if IInterface.providedBy(schema):
         self.identifier = schema.__identifier__
     else:
         self.identifier = str(schema)
     for name in getFieldNamesInOrder(interfaces.IFlavor):
         if name in kwargs:
             setattr(self, name, kwargs.get(name))
开发者ID:seanupton,项目名称:experimental.flavors,代码行数:8,代码来源:info.py

示例7: __init__

 def __init__(self, context, request=None):
     ## context should be context of API view, not API view itself
     self.context = context
     self.__parent__ = context  # may be re-parented by API to view
     self.request = getRequest() if request is None else request
     self.definition = IFormDefinition(self.context)
     self._schema = self.definition.schema
     self._fieldnames = getFieldNamesInOrder(self._schema)
开发者ID:upiq,项目名称:uu.formlibrary,代码行数:8,代码来源:fields.py

示例8: getFields

def getFields(context):
    domain_model = proxy.removeSecurityProxy(context.domain_model)
    domain_interface = queryModelInterface(domain_model)
    field_names = schema.getFieldNamesInOrder(domain_interface)
    for f in field_names:
        field = domain_interface[f]
        if isinstance(field, (schema.Choice, schema.Object, schema.List, schema.Tuple, schema.Bytes)):
            continue
        yield field
开发者ID:kapilt,项目名称:zope-alchemist,代码行数:9,代码来源:container.py

示例9: get_unknown_fields

def get_unknown_fields(action_data, schema):
    """Return an error list of unknown fields that are not part of the schema.
    """
    errors = []
    known_field_names = getFieldNamesInOrder(schema)
    for key in action_data:
        if key not in known_field_names:
            errors.append((key, UnknownField(key)))
    return errors
开发者ID:4teamwork,项目名称:opengever.core,代码行数:9,代码来源:validation.py

示例10: available_fields

 def available_fields(self):
     fields = []
     names = [
         name for name in getFieldNamesInOrder(IListingSearchTile)
         if name.startswith('form_')
     ]
     for name in names:
         if self.data.get(name, False):
             fields.append(name.split('form_')[1])
     return fields
开发者ID:propertyshelf,项目名称:ps.plone.mlstiles,代码行数:10,代码来源:listing_search.py

示例11: values

def values(obj):
    registry = get_current_registry()
    values = {}
    for interface in obj.__provides__.interfaces():
        for name in getFieldNamesInOrder(interface):
            field = interface[name]
            bound = field.bind(obj)
            value = bound.get(obj)
            values[name] = registry.queryMultiAdapter(
                (field, value), IJSONValue, default=value)
    return values
开发者ID:datakurre,项目名称:shaura_json,代码行数:11,代码来源:utils.py

示例12: __init__

 def __init__(self, context, request):
     self.context = context
     self.request = request
     self.portal = getSite()
     self.definition = IFormDefinition(self.context)
     self.series = context.__parent__  # assumes series <>--- form
     self.title = '%s: %s' % (self.series.Title().strip(), context.Title())
     self.seriesinfo = dict(
         [(k, v) for k, v in self.series.__dict__.items()
          if v is not None and k in getFieldNamesInOrder(IFormSeries)]
         )
开发者ID:upiq,项目名称:uu.formlibrary,代码行数:11,代码来源:common.py

示例13: __init__

    def __init__(cls, name, bases, dct, map_kind=True):
        """Initializes a class that might implement interfaces"""

        registry = get_current_registry()
        implements = getattr(cls, "__implements_advice_data__", None)
        for interface in (implements and implements[0] or ()):
            for name in schema.getFieldNamesInOrder(interface):
                field = interface[name]
                setattr(cls, name, registry.getAdapter(field, IProperty))
                dct.update({name: getattr(cls, name)})
        super(SchemaPropertiedClass, cls).__init__(name, bases, dct, map_kind)
开发者ID:datakurre,项目名称:shaura_gae,代码行数:11,代码来源:db.py

示例14: testSA2ZS

    def testSA2ZS(self):

        iusers = transmute(users)
        self.assertEqual(tuple(schema.getFieldNamesInOrder(iusers)), ("user_id", "user_name"))

        fields = dict(schema.getFieldsInOrder(iusers))
        # assert types and constraints
        self.assertTrue(isinstance(fields["user_id"], schema.Int))
        self.assertTrue(fields["user_id"].required)
        self.assertTrue(isinstance(fields["user_name"], schema.TextLine))
        self.assertEqual(fields["user_name"].max_length, 40)
        self.assertEqual(fields["user_name"].default, u"hello world")
开发者ID:kapilt,项目名称:zope-alchemist,代码行数:12,代码来源:test_sa2zs.py

示例15: test_syncSchema_overwrite

    def test_syncSchema_overwrite(self):
        class ISource(Interface):
            one = schema.TextLine(title=u"A")
            two = schema.Int(title=u"B")

        class IDest(Interface):
            one = schema.TextLine(title=u"C")
            three = schema.Int(title=u"D")

        ISource.setTaggedValue("tag1", "tag one")
        ISource.setTaggedValue("tag2", "tag two")
        IDest.setTaggedValue("tag1", "first tag")

        utils.syncSchema(ISource, IDest, overwrite=True)

        self.assertEqual(u"A", IDest["one"].title)

        self.assertEqual(["one", "two"], getFieldNamesInOrder(ISource))
        self.assertEqual(["one", "two"], getFieldNamesInOrder(IDest))

        self.assertEqual("tag one", IDest.getTaggedValue("tag1"))
        self.assertEqual("tag two", IDest.getTaggedValue("tag2"))
开发者ID:plone,项目名称:plone.supermodel,代码行数:22,代码来源:tests.py


注:本文中的zope.schema.getFieldNamesInOrder函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。