python类VariableDoesNotExist()的实例源码

wtforms.py 文件源码 项目:ngx_status 作者: YoYoAdorkable 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            if '.' in self.field_var:
                base, field_name = self.field_var.rsplit('.', 1)
                field = getattr(Variable(base).resolve(context), field_name)
            else:
                field = context[self.field_var]
        except (template.VariableDoesNotExist, KeyError, AttributeError):
            return settings.TEMPLATE_STRING_IF_INVALID

        h_attrs = {}
        for k, v in iteritems(self.html_attrs):
            try:
                h_attrs[k] = v.resolve(context)
            except template.VariableDoesNotExist:
                h_attrs[k] = settings.TEMPLATE_STRING_IF_INVALID

        return field(**h_attrs)
config.py 文件源码 项目:DCRM 作者: 82Flex 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def get_current_app(request):
    try:
        return request.current_app
    except (VariableDoesNotExist, AttributeError):
        pass
    return None
gravatar_tags.py 文件源码 项目:paas-tools 作者: imperodesign 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            email = self.email.resolve(context)
        except template.VariableDoesNotExist:
            return ''
        # default = 'http://example.com/static/images/defaultavatar.jpg'
        default = 'mm'  # Mystery Man
        size = 24
        return '//www.gravatar.com/avatar/{}?{}'.format(
            hashlib.md5(email.lower()).hexdigest(),
            urllib.urlencode({'d': default, 's': str(size)}))
gravatar_tags.py 文件源码 项目:paas-tools 作者: imperodesign 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            email = self.email.resolve(context)
        except template.VariableDoesNotExist:
            return ''
        # default = 'http://example.com/static/images/defaultavatar.jpg'
        default = 'mm'  # Mystery Man
        size = 24
        return '//www.gravatar.com/avatar/{}?{}'.format(
            hashlib.md5(email.lower()).hexdigest(),
            urllib.urlencode({'d': default, 's': str(size)}))
project_url_tag.py 文件源码 项目:isar 作者: ilbers 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            project = self.project.resolve(context)
            if project.is_default:
                return reverse('projectbuilds', args=(project.id,))
            else:
                return reverse('project', args=(project.id,))
        except template.VariableDoesNotExist:
            return ''
ui_tags.py 文件源码 项目:drastic-web 作者: UMD-DRASTIC 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            actual_total = self.total.resolve(context)
            actual_used = self.used.resolve(context)
        except template.VariableDoesNotExist:
            return ''

        return 100 / (actual_total / actual_used)
ui_tags.py 文件源码 项目:drastic-web 作者: UMD-DRASTIC 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            actual_total = self.total.resolve(context)
            actual_used = self.used.resolve(context)
        except template.VariableDoesNotExist:
            return ''

        pc = (100 / (actual_total / actual_used))
        if pc < 50:
            return 'success'
        if pc < 75:
            return 'warning'
        return 'danger'
templated_docs_tags.py 文件源码 项目:templated-docs 作者: alexmorozov 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            self.value = self.value.resolve(context)
            if not isinstance(self.value, ImageFieldFile):
                raise template.VariableDoesNotExist(
                    'Image argument should be an ImageField')
            images = context.dicts[0].setdefault('ootemplate_imgs', {})

            id = len(images)
            z_index = id + 3  # Magic
            width = self.value.width * PIXEL_TO_CM
            height = self.value.height * PIXEL_TO_CM
            filename = os.path.basename(self.value.name)
            basename = os.path.splitext(filename)[0]

            images[self.value.path] = self.value
            return ('<draw:frame draw:style-name="gr%(z_index)s" '
                    'draw:name="%(basename)s" '
                    'draw:id="id%(id)s" '
                    'text:anchor-type="char" svg:width="%(width)fcm" '
                    'svg:height="%(height)fcm" draw:z-index="%(z_index)s">'
                    '<draw:image xlink:href="Pictures/%(filename)s" '
                    'xlink:type="simple" xlink:show="embed" '
                    'xlink:actuate="onLoad"/></draw:frame>') % locals()
        except template.VariableDoesNotExist:
            return ''
gravatar.py 文件源码 项目:bbs 作者: eenot 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            email = self.email.resolve(context)
        except template.VariableDoesNotExist:
            return ''

        default = "http://example.com/static/images/defaultavatar.jpg"
        size = 40

        gravatar_url = "http://www.gravatar.com/avatar/" + hashlib.md5(email.lower()).hexdigest() + "?"
        gravatar_url += urllib.urlencode({'d':default, 's':str(size)})

        return gravatar_url
comments.py 文件源码 项目:tissuelab 作者: VirtualPlants 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def get_target_ctype_pk(self, context):
        if self.object_expr:
            try:
                obj = self.object_expr.resolve(context)
            except template.VariableDoesNotExist:
                return None, None
            return ContentType.objects.get_for_model(obj), obj.pk
        else:
            return self.ctype, self.object_pk_expr.resolve(context, ignore_failures=True)
comments.py 文件源码 项目:tissuelab 作者: VirtualPlants 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def get_object(self, context):
        if self.object_expr:
            try:
                return self.object_expr.resolve(context)
            except template.VariableDoesNotExist:
                return None
        else:
            object_pk = self.object_pk_expr.resolve(context,
                    ignore_failures=True)
            return self.ctype.get_object_for_this_type(pk=object_pk)
var_tag.py 文件源码 项目:mes 作者: osess 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def render(self, context):
        try:
            resolved_var = template.resolve_variable(
                self.var_to_resolve, context
            )
            self.get_context(context)[self.var_name] = resolved_var
        except template.VariableDoesNotExist:
            self.get_context(context)[self.var_name] = ""
        return ""
balafon_profile_perm.py 文件源码 项目:balafon 作者: ljean 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def render(self, context):
        request = context.get('request')

        try:
            v = template.Variable(self.title)
            self.title = v.resolve(context)
        except template.VariableDoesNotExist:
            self.title = self.title.strip("'").strip('"')

        if self._check_perm(request.user, force_lang=self.lang, current_lang=request.LANGUAGE_CODE):
            return self.nodelist_true.render(context)
        else:
            return self.nodelist_false.render(context)
crispy_forms_field.py 文件源码 项目:mes 作者: osess 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def render(self, context):
        # Nodes are not threadsafe so we must store and look up our instance
        # variables in the current rendering context first
        if self not in context.render_context:
            context.render_context[self] = (
                template.Variable(self.field),
                self.attrs,
                template.Variable(self.html5_required)
            )

        field, attrs, html5_required = context.render_context[self]
        field = field.resolve(context)
        try:
            html5_required = html5_required.resolve(context)
        except template.VariableDoesNotExist:
            html5_required = False

        widgets = getattr(field.field.widget, 'widgets', [field.field.widget])

        if isinstance(attrs, dict):
            attrs = [attrs] * len(widgets)

        for widget, attr in zip(widgets, attrs):
            class_name = widget.__class__.__name__.lower()
            class_name = class_converter.get(class_name, class_name)
            css_class = widget.attrs.get('class', '')
            if css_class:
                if css_class.find(class_name) == -1:
                    css_class += " %s" % class_name
            else:
                css_class = class_name

            if (
                TEMPLATE_PACK == 'bootstrap3'
                and not is_checkbox(field)
                and not is_file(field)
            ):
                css_class += ' form-control'

            widget.attrs['class'] = css_class

            # HTML5 required attribute
            if html5_required and field.field.required and 'required' not in widget.attrs:
                if field.field.widget.__class__.__name__ is not 'RadioSelect':
                    widget.attrs['required'] = 'required'

            for attribute_name, attribute in attr.items():
                attribute_name = template.Variable(attribute_name).resolve(context)

                if attribute_name in widget.attrs:
                    widget.attrs[attribute_name] += " " + template.Variable(attribute).resolve(context)
                else:
                    widget.attrs[attribute_name] = template.Variable(attribute).resolve(context)

        return field


问题


面经


文章

微信
公众号

扫码关注公众号