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


Python SimpleVocabulary.getTerm方法代码示例

本文整理汇总了Python中zope.schema.vocabulary.SimpleVocabulary.getTerm方法的典型用法代码示例。如果您正苦于以下问题:Python SimpleVocabulary.getTerm方法的具体用法?Python SimpleVocabulary.getTerm怎么用?Python SimpleVocabulary.getTerm使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在zope.schema.vocabulary.SimpleVocabulary的用法示例。


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

示例1: KeywordSource

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
class KeywordSource(object):
    implements(IQuerySource)

    def __init__(self, context):
        self.context = context
        self.vocab = SimpleVocabulary(
            [SimpleVocabulary.createTerm(DATA[x], x, DATA[x])
             for x in DATA]
        )

    def __contains__(self, term):
        return self.vocab.__contains__(term)

    def __iter__(self):
        return self.vocab.__iter__()

    def __len__(self):
        return self.vocab.__len__()

    def getTerm(self, value):
        return self.vocab.getTerm(value)

    def getTermByToken(self, value):
        return self.vocab.getTermByToken(value)

    def search(self, query_string):
        q = query_string.lower()
        return [kw
                for kw in self.vocab._terms
                if q.lower() in kw.value]
开发者ID:cedricmessiant,项目名称:collective.z3cform.chosen,代码行数:32,代码来源:demo.py

示例2: KeywordSource

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
class KeywordSource(object):
    interface.implements(IQuerySource)

    def __init__(self, context):
        self.context = context
        catalog = getToolByName(context, 'portal_catalog')
        self.keywords = catalog.uniqueValuesFor('Subject')
        terms = []
        for x in self.keywords:
            terms.append(SimpleTerm(x, x, unicode(x)))
        self.vocab = SimpleVocabulary(terms)

    def __contains__(self, term):
        return self.vocab.__contains__(term)

    def __iter__(self):
        return self.vocab.__iter__()

    def __len__(self):
        return self.vocab.__len__()

    def getTerm(self, value):
        return self.vocab.getTerm(value)

    def getTermByToken(self, value):
        return self.vocab.getTermByToken(value)

    def search(self, query_string):
        q = query_string.lower()
        return [self.getTerm(kw) for kw in self.keywords if q in kw.lower()]
开发者ID:collective,项目名称:collective.z3cform.html5widgets,代码行数:32,代码来源:html5widgets.py

示例3: commentPolicyVocabulary

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
def commentPolicyVocabulary(context):
    """ returns Policy for discussion
    """
    vocab = SimpleVocabulary([
        SimpleTerm(1, 'open', 'Open'),
        SimpleTerm(4, 'approval', 'Open with approval'),
        SimpleTerm(2, 'closed', 'Closed'),
        SimpleTerm(3, 'disabled', 'Disabled')])

    vocab.getTerm(1).description = _(
        'Comments are allowed.')
    vocab.getTerm(2).description = _(
        'Existing comments will be displayed, new comments are not allowed.')
    vocab.getTerm(3).description = _(
        'Comments will not be displayed, new comments are not allowed.')
    vocab.getTerm(4).description = _(
        'Comments are allowed but require approval for non auth users.')

    return vocab
开发者ID:Zojax,项目名称:zojax.content.discussion,代码行数:21,代码来源:vocabulary.py

示例4: KeywordSource

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
class KeywordSource(object):
    implements(IQuerySource)

    def __init__(self, context):
        self.context = context
        catalog = getToolByName(context, 'portal_catalog')
        self.keywords = catalog.uniqueValuesFor('Subject')

        def safe_str(s):
            if type(s) == unicode:
                return s.encode("utf-8", "replace")
            else:
                return s

        def safe_unicode(s):
            if type(s) == str:
                return unicode(s, "utf-8", "replace")
            else:
                return s

        # XXX: plone.z3cform monkeypatches z3c.forms to decode
        # all form values in query to unicode; in short, one cannot
        # use non-ascii characters in tokens (z3c.form expects tokens
        # to be encoded strings, but plone.z3cform breaks this)

        self.vocab = SimpleVocabulary([
            SimpleTerm(safe_unicode(x), quote(safe_str(x)), safe_unicode(x))
            for x in self.keywords])

    def __contains__(self, term):
        return self.vocab.__contains__(term)

    def __iter__(self):
        return self.vocab.__iter__()

    def __len__(self):
        return self.vocab.__len__()

    def getTerm(self, value):
        def safe_unicode(s):
            if type(s) == str:
                return unicode(s, "utf-8", "replace")
            else:
                return s
        return self.vocab.getTerm(safe_unicode(value))

    def getTermByToken(self, value):
        return self.vocab.getTermByToken(value)

    def search(self, query_string):
        q = query_string.lower()
        return [self.getTerm(kw) for kw in self.keywords if q in kw.lower()]
开发者ID:pingviini,项目名称:collective.dynapage,代码行数:54,代码来源:dynacollection.py

示例5: CustomSearchableTextSource

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
class CustomSearchableTextSource(SearchableTextSource):
    implements(ISource)
    classProvides(IContextSourceBinder)

    def __init__(self, context, base_query={}, default_query=None):
        super(CustomSearchableTextSource, self).__init__(context, base_query=base_query, default_query=default_query)
        self.vocabulary = SimpleVocabulary([SimpleTerm(a, a, a) for a in self.baseTerms()])

    def baseTerms(self):
        query = self.base_query.copy()
        try:
            results = (x.getPath()[len(self.portal_path):] for x in self.catalog(**query))
        except ParseError:
            return []

        if query.has_key('path'):
            path = query['path']['query'][len(self.portal_path):]
            if path != '':
                return itertools.chain((path,), results)
        return results

    def search(self, query_string):
        results = super(CustomSearchableTextSource, self).search(query_string)
        return SimpleVocabulary([SimpleTerm(a, a, a) for a in results])

    def __contains__(self, value):
        return self.vocabulary.__contains__(value)

    def __iter__(self):
        return self.vocabulary.__iter__()

    def getTerm(self, value):
        return self.vocabulary.getTerm(value)


    def getTermByToken(self, token):
        return self.vocabulary.getTermByToken(token)
开发者ID:vindula,项目名称:Solgema.fullcalendar,代码行数:39,代码来源:interfaces.py

示例6: SimpleVocabulary

# 需要导入模块: from zope.schema.vocabulary import SimpleVocabulary [as 别名]
# 或者: from zope.schema.vocabulary.SimpleVocabulary import getTerm [as 别名]
#
##############################################################################
"""

$Id$
"""
from zope import interface, schema
from zope.schema.vocabulary import SimpleTerm, SimpleVocabulary
from zojax.content.permissions.interfaces import _

sharingVocabulary = SimpleVocabulary(
    [SimpleTerm('inherited', 'inherited', _('INHERITED')),
     SimpleTerm('open', 'open', _('OPEN')),
     SimpleTerm('custom', 'custom', _('CUSTOM'))])

sharingVocabulary.getTerm('inherited').description = _(
    'Content item will inherit its permissions from the parent container.')
sharingVocabulary.getTerm('open').description = _(
    'Any user can view this content item.')
sharingVocabulary.getTerm('custom').description = _(
    'You can select groups and users who can view this content.')


class ISharingContent(interface.Interface):

    method = schema.Choice(
        title = _(u'Access control'),
        description = _(u'Who may view this content.'),
        vocabulary = sharingVocabulary,
        required = True)
开发者ID:Zojax,项目名称:zojax.content.permissions,代码行数:32,代码来源:interfaces.py


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