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


Python Release.search方法代码示例

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


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

示例1: search

# 需要导入模块: from pyshop.models import Release [as 别名]
# 或者: from pyshop.models.Release import search [as 别名]
    def search(self, spec, operator='and'):
        """
        Search the package database using the indicated search spec. 

        The spec may include any of the keywords described in the above list
        (except 'stable_version' and 'classifiers'),
        for example: {'description': 'spam'} will search description fields.
        Within the spec, a field's value can be a string or a list of strings
        (the values within the list are combined with an OR),
        for example: {'name': ['foo', 'bar']}.
        Valid keys for the spec dict are listed here. Invalid keys are ignored:
            name
            version
            author
            author_email
            maintainer
            maintainer_email
            home_page
            license
            summary
            description
            keywords
            platform
            download_url 
        Arguments for different fields are combined using either "and"
        (the default) or "or".
        Example: search({'name': 'foo', 'description': 'bar'}, 'or').
        The results are returned as a list of dicts
        {'name': package name,
         'version': package release version,
         'summary': package release summary} 
        """
        api = pypi.proxy
        rv = []
         # search in proxy
        for k, v in spec.items():
            rv += api.search({k: v}, True)

        # search in local
        session = DBSession()
        release = Release.search(session, spec, operator)
        session.rollback()
        rv += [{'name': r.package.name,
                'version': r.version,
                'summary': r.summary,
                # hack https://mail.python.org/pipermail/catalog-sig/2012-October/004633.html
                '_pypi_ordering':'',
                } for r in release]
        return rv
开发者ID:DeskGen,项目名称:pyshop,代码行数:51,代码来源:xmlrpc.py

示例2: search

# 需要导入模块: from pyshop.models import Release [as 别名]
# 或者: from pyshop.models.Release import search [as 别名]
    def search(self, spec, operator='and'):
        """
        Search the package database using the indicated search spec. 

        The spec may include any of the keywords described in the above list
        (except 'stable_version' and 'classifiers'),
        for example: {'description': 'spam'} will search description fields.
        Within the spec, a field's value can be a string or a list of strings
        (the values within the list are combined with an OR),
        for example: {'name': ['foo', 'bar']}.
        Valid keys for the spec dict are listed here. Invalid keys are ignored:
            name
            version
            author
            author_email
            maintainer
            maintainer_email
            home_page
            license
            summary
            description
            keywords
            platform
            download_url 
        Arguments for different fields are combined using either "and"
        (the default) or "or".
        Example: search({'name': 'foo', 'description': 'bar'}, 'or').
        The results are returned as a list of dicts
        {'name': package name,
         'version': package release version,
         'summary': package release summary} 
        """
        session = DBSession()
        release = Release.search(session, spec, operator)
        session.rollback()
        rv = [{'name': r.package.name,
               'version': r.version,
               'summary': r.summary} for r in release]
        return rv
开发者ID:disko,项目名称:pyshop,代码行数:41,代码来源:xmlrpc.py

示例3: test_search_by_author

# 需要导入模块: from pyshop.models import Release [as 别名]
# 或者: from pyshop.models.Release import search [as 别名]
 def test_search_by_author(self):
     from pyshop.models import Release
     releases = Release.search(self.session, {'author': 'janedoe'}, 'and')
     self.assertIsInstance(releases, list)
     releases = [(r.package.name, r.version) for r in releases]
     self.assertEqual(releases, [(u'mirrored_package1', u'0.1')])
开发者ID:DeaconDesperado,项目名称:pyshop,代码行数:8,代码来源:test_models.py


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