models.py 文件源码

python
阅读 29 收藏 0 点赞 0 评论 0

项目:berlyne 作者: rugo 项目源码 文件源码
def parse_desc(self):
        ctx = {}

        for download in self.download_set.all():
            ctx['DL_{}'.format(download.slug)] = reverse(
                'wui_download_file',
                kwargs={'download_id': download.pk}
            )

        vm = self.vm
        if vm:
            if not vm.provider or vm.ip_addr == UNKNOWN_HOST:
                return None

            if vm.ip_addr == LOCALHOST:
                ctx['HOST'] = settings.DOMAIN
            else:
                ctx['HOST'] = vm.ip_addr

            try:
                provider = ALLOWED_PROVIDERS[vm.provider]
            except KeyError:
                logger.warning(
                    "Illegal provider '%s' used in VM %s",
                    vm.provider, vm.slug
                )
                return None

            for port in vm.port_set.all():
                if provider.port_forwarding:
                    ctx['PORT_{}'.format(port.guest_port)] = port.host_port
                else:
                    ctx['PORT_{}'.format(port.guest_port)] = port.guest_port
        return self.desc.format_map(defaultdict(str, **ctx))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号