• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python projects_tags.sort_version_aware函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

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



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

示例1: api_versions

 def api_versions(self):
     ret = []
     for version_data in api.version.get(project=self.pk,
                                         active=True)['objects']:
         version = make_api_version(version_data)
         ret.append(version)
     return sort_version_aware(ret)
开发者ID:rrahn,项目名称:readthedocs.org,代码行数:7,代码来源:models.py


示例2: api_versions

 def api_versions(self):
     from readthedocs.builds.models import Version
     ret = []
     for version_data in api.version.get(project=self.pk, active=True)['objects']:
         version = make_api_version(version_data)
         ret.append(version)
     return sort_version_aware(ret)
开发者ID:wyrdvans,项目名称:readthedocs.org,代码行数:7,代码来源:models.py


示例3: api_versions

 def api_versions(self):
     from readthedocs.builds.models import APIVersion
     ret = []
     for version_data in api.project(self.pk).active_versions.get()['versions']:
         version = APIVersion(**version_data)
         ret.append(version)
     return sort_version_aware(ret)
开发者ID:devrkd,项目名称:readthedocs.org,代码行数:7,代码来源:models.py


示例4: ordered_active_versions

    def ordered_active_versions(self, user=None):
        from readthedocs.builds.models import Version

        kwargs = {"project": self, "only_active": True}
        if user:
            kwargs["user"] = user
        versions = Version.objects.public(**kwargs)
        return sort_version_aware(versions)
开发者ID:optimizely,项目名称:readthedocs.org,代码行数:8,代码来源:models.py


示例5: get_all_active_versions

    def get_all_active_versions(self):
        """
        Returns all active versions.

        Returns a smartly sorted list of tuples.
        First item of each tuple is the version's slug,
        and the second item is version's verbose_name.
        """
        version_qs = self.instance.all_active_versions()
        if version_qs.exists():
            version_qs = sort_version_aware(version_qs)
            all_versions = [(version.slug, version.verbose_name) for version in version_qs]
            return all_versions
        return None
开发者ID:chrisjsewell,项目名称:readthedocs.org,代码行数:14,代码来源:forms.py


示例6: ordered_active_versions

 def ordered_active_versions(self, user=None):
     from readthedocs.builds.models import Version
     kwargs = {
         'project': self,
         'only_active': True,
     }
     if user:
         kwargs['user'] = user
     versions = Version.objects.public(**kwargs).select_related(
         'project',
         'project__main_language_project',
     ).prefetch_related(
         Prefetch(
             'project__superprojects',
             ProjectRelationship.objects.all().select_related('parent'),
             to_attr='_superprojects',
         ),
         Prefetch(
             'project__domains',
             Domain.objects.filter(canonical=True),
             to_attr='_canonical_domains',
         ),
     )
     return sort_version_aware(versions)
开发者ID:chrisjsewell,项目名称:readthedocs.org,代码行数:24,代码来源:models.py


示例7: project_downloads

def project_downloads(request, project_slug):
    """A detail view for a project with various downloads."""
    project = get_object_or_404(
        Project.objects.protected(request.user),
        slug=project_slug,
    )
    versions = Version.objects.public(user=request.user, project=project)
    versions = sort_version_aware(versions)
    version_data = OrderedDict()
    for version in versions:
        data = version.get_downloads()
        # Don't show ones that have no downloads.
        if data:
            version_data[version] = data

    return render(
        request,
        'projects/project_downloads.html',
        {
            'project': project,
            'version_data': version_data,
            'versions': versions,
        },
    )
开发者ID:rtfd,项目名称:readthedocs.org,代码行数:24,代码来源:public.py


示例8: ordered_active_versions

 def ordered_active_versions(self):
     from readthedocs.builds.models import Version
     versions = Version.objects.public(project=self, only_active=True)
     return sort_version_aware(versions)
开发者ID:rrahn,项目名称:readthedocs.org,代码行数:4,代码来源:models.py


示例9: sitemap_xml

def sitemap_xml(request, project):
    """
    Generate and serve a ``sitemap.xml`` for a particular ``project``.

    The sitemap is generated from all the ``active`` and public versions of
    ``project``. These versions are sorted by using semantic versioning
    prepending ``latest`` and ``stable`` (if they are enabled) at the beginning.

    Following this order, the versions are assigned priorities and change
    frequency. Starting from 1 and decreasing by 0.1 for priorities and starting
    from daily, weekly to monthly for change frequency.

    If the project is private, the view raises ``Http404``. On the other hand,
    if the project is public but a version is private, this one is not included
    in the sitemap.

    :param request: Django request object
    :param project: Project instance to generate the sitemap

    :returns: response with the ``sitemap.xml`` template rendered

    :rtype: django.http.HttpResponse
    """

    def priorities_generator():
        """
        Generator returning ``priority`` needed by sitemap.xml.

        It generates values from 1 to 0.1 by decreasing in 0.1 on each
        iteration. After 0.1 is reached, it will keep returning 0.1.
        """
        priorities = [1, 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2]
        yield from itertools.chain(priorities, itertools.repeat(0.1))

    def changefreqs_generator():
        """
        Generator returning ``changefreq`` needed by sitemap.xml.

        It returns ``daily`` on first iteration, then ``weekly`` and then it
        will return always ``monthly``.

        We are using ``monthly`` as last value because ``never`` is too
        aggressive. If the tag is removed and a branch is created with the same
        name, we will want bots to revisit this.
        """
        changefreqs = ['daily', 'weekly']
        yield from itertools.chain(changefreqs, itertools.repeat('monthly'))

    if project.privacy_level == constants.PRIVATE:
        raise Http404

    sorted_versions = sort_version_aware(
        Version.objects.public(
            project=project,
            only_active=True,
        ),
    )
    versions = []
    for version, priority, changefreq in zip(
            sorted_versions,
            priorities_generator(),
            changefreqs_generator(),
    ):
        element = {
            'loc': version.get_subdomain_url(),
            'priority': priority,
            'changefreq': changefreq,
            'languages': [],
        }

        # Version can be enabled, but not ``built`` yet. We want to show the
        # link without a ``lastmod`` attribute
        last_build = version.builds.order_by('-date').first()
        if last_build:
            element['lastmod'] = last_build.date.isoformat()

        if project.translations.exists():
            for translation in project.translations.all():
                translation_versions = translation.versions.public(
                    ).values_list('slug', flat=True)
                if version.slug in translation_versions:
                    href = project.get_docs_url(
                        version_slug=version.slug,
                        lang_slug=translation.language,
                        private=False,
                    )
                    element['languages'].append({
                        'hreflang': translation.language,
                        'href': href,
                    })

            # Add itself also as protocol requires
            element['languages'].append({
                'hreflang': project.language,
                'href': element['loc'],
            })

        versions.append(element)

    context = {
#.........这里部分代码省略.........
开发者ID:rtfd,项目名称:readthedocs.org,代码行数:101,代码来源:serve.py


示例10: ordered_active_versions

 def ordered_active_versions(self):
     return sort_version_aware(self.versions.filter(active=True))
开发者ID:wyrdvans,项目名称:readthedocs.org,代码行数:2,代码来源:models.py



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python utils.make_api_version函数代码示例发布时间:2022-05-26
下一篇:
Python constants.LOG_TEMPLATE类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap