[Django]template {% if 1==1 %} 错误

今天群里有个人问,在django的模板里面,下面这段代码为啥不对?

	  {% if 1==1 %}

	  {% endif %}

乍一看我还不信, == 不就是判断是不是相等的吗? 自己把代码放到一个网页里面试了试.

TemplateSyntaxError at /mngm/operationlog/search/
Could not parse the remainder: '==1' from '1==1'

果然是不对,看了点源码,其实就是不能解析这个格式,也没啥特别的。 不过不注意可能会写错。

template中有这种专门的比较操作标签 ifequal

https://docs.djangoproject.com/en/1.6/ref/templates/builtins/#ifequal

{% ifequal user.pk comment.user_id %}
    ...
{% endifequal %}

有时候就是思维惯性,觉着模板里面的函数不就是python吗,其实还真不是。

本文出自 “orangleliu笔记本”博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/40787713

作者: orangleliu

时间: 2025-01-13 20:22:25

[Django]template {% if 1==1 %} 错误的相关文章

django升级2.1python升级3.7时出现的错误:"trying to load '%s': %s" % (entry[1], e) django.template.library.InvalidTemplateLibrary:

django升级2.1python升级3.7时出现如下的错误: "trying to load '%s': %s" % (entry[1], e) django.template.library.InvalidTemplateLibrary: Invalid template library specified. ImportError raised when trying to load 'crispy_forms.templatetags.crispy_forms_utils':

django template language入门

django_template The Django template language template模板是一个简单的文本文件,可以生成文本格式(HTML,XML,CSV) 模板包含变量,这些变量将会被赋值 例如: {% extends "base_generic.html" %} {% block title %}{{ section.title }}{% endblock %} {% block content %} <h1>{{ section.title }}&

django 1.8 出现 TemplateDoesNotExist 错误

出现TemplateDoesNotExist错误的原因有很多,常见的原因如下 1   文件路径错误 解决办法 看路径是否设置正确 2  TEMPLATE_DIR 赋值格式错误,经常将字符串赋值给它,正确应该是元组 解决办法 BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) TEMPLATE_DIRS = ( os.path.join(BASE_DIR, 'templates').replace('\\',

Django Template

一.模板组成 组成:HTML代码 + 逻辑控制代码 二.逻辑控制代码的组成 1.变量 语法格式 : {{ name }} # 使用双大括号来引用变量 1.Template和Context对象(不推荐使用) from django.template import Context, Template t = Template('My name is {{ name }}.') c = Context({'name': 'Stephane'}) t.render(c) # in HTML 'My na

Django Template模板层 (下) ----------- 过滤器、人性化过滤器、模板继承、模板加载

---恢复内容开始--- 过滤器 除了模板标签可以帮助我们对数据或者进行逻辑处理.django 中还提供了一款工具叫做过滤器,过滤器也可以实现一些模板变量的运算,判断或是其他逻辑处理. add 语法: {{ var1|add:var2 }} add 过滤器可以实现 var1 与 var2 的相加,并且在遇到其他相同数据类型的,比如列表时,加号还可以重载为拼接功能 过滤器首先会将数据转换成Int类型,进行相加,如果转换失败,则会尝试使用 Python 中的数据类型 列表.元祖等这样的数据类型来进行

Django Template模板

Django Template 你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python 代码之中. 下面我们来调用html views def index(request,user): if request.method == 'GET': user_info = { 'username':'alex', 'name':'Alex Li' } return render(request,'app01/index.html',{'user_obj'

Django 找不到模版报错&quot; django.template.exceptions.TemplateDoesNotExist: index.html&quot;

解决办法:在setting.py的TEMPLATES‘DIRS'[]加入模版路径 os.path.join(BASE_DIR, 'templates') TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], #os.path.join(BASE_DIR, 'templates')没了这句, # 会显示d

Django template language

Basics A template is a text document or a normal Python string, that is marked-up using the Django template language. A template can contain block tags or variables. A block tag is a symbol within a template that does something. For example, a block

django实现登录时候输入密码错误5次锁定用户十分钟

django实现登录时候输入密码错误5次锁定用户十分钟 在学习django的时候,想要实现登录失败后,进行用户锁定,切记录锁定时间,在网上找了很多资料,但是都感觉不是那么靠谱,于是乎,我开始了我的设计,其实我一开始想要借助redis呢,但是想要先开发一个简单的,后续在拆分后,然后在去进行拆分, 这样也是很接近我们在真实的开发中所遇到问题. 我的思路是: 输入账号密码>是否已经登录>提示已经登录 输入账号密码>错误次数少于6次>校验密码>登录成功,记录登录时间,错误次数清空,记