We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Life is a flower, and love is the honey of the flower.
Django Blog
Django Tips
Django
settings.py
ROOT_URLCONF
urls.py
URLconf
URLpatterns
view
URL
r'(?P<year>\d{4})/$'
1000-9999
templates
变量
{{ var }}
模板标签
{% if %}
|
filter过滤器
{{body|truncatewords:5}}
Python
False
None
and
or
not
{elif}
{% for %}
reversed
{% for x in y reversed %}
{% empty %}
continue
forloop
{{% endfor %}}
forloop.counter
1
forloop.counter0
0
forloop.revcounter
forloop.revcounter0
forloop.first
True
forloop.last
if
for
forloop.parentloop
{% ifequal %}
{% ifnotequal %}
{% else %}
{# #}
{% comment %}
{% endcomment %}
逗号
The text was updated successfully, but these errors were encountered:
No branches or pull requests
0x01 Django
Django Blog
学习总结Django Tips
Django
处理请求方式Django
会查找settings.py
文件,然后在其中找到ROOT_URLCONF
参数 ,此参数指向了urls.py
,Django
会按顺序逐个匹配URLconf
中的URLpatterns
,找到匹配的后就调用相关联的view
视图函数URL
URL
r'(?P<year>\d{4})/$'
动态匹配4位年份数字,URL
就可以从1000-9999
templates
变量
,比如{{ var }}
模板标签
, 比如{% if %}
|
调用的是filter过滤器
,过滤器是一种最便捷的转换变量输出格式的方式,比如{{body|truncatewords:5}}
{% if %}
模板标签Python
和Django
模板系统中,以下对象相当于布尔值的False
None
False
{% if %}
标签接受and
,or
,not
来对多个变量做判断,不允许在同一标签中同时使用and
和or
,但是可以多次使用同一个逻辑操作符,不支持用圆括号来组合比较操作,并没有{elif}
标签{% for %}
标签,给标签增加一个reversed
使得该列表被反向迭代,比如{% for x in y reversed %}
,{% for %}
标签支持一个可选的{% empty %}
分句,通过它可以定义当列表为空时的输出内容Django
不支持退出循环操作,如果想退出循环,可以改变正在迭代的变量,让其仅包含需要迭代的项目,Django
也不支持continue
语句,无法让当前迭代操作跳回到循环头部{% for %}
循环中有一个称为forloop
的模板变量,这个变量提示循环进度信息,仅能在循环中使用,{{% endfor %}}
之后就无法使用了forloop.counter
表示当前循环的执行次数的整数计数器,从1
开始forloop.counter0
和forloop.counter
类似,但是是从0
开始计数的forloop.revcounter
表示循环中剩余项的整型变量,在循环初次执行时,forloop.revcounter
被设置成序列中项的总数,最后一次执行时,这个变量就是1
forloop.revcounter0
则以0
作为索引结束,第一次执行的时候,该变量为序列项的个数减1
forloop.first
是一个布尔值,如果第一次执行循环,那么被设置为True
forloop.last
是一个布尔值,在最后一次执行循环时,被设置为True
,常见的用法: 利用if
来用于分隔各个for
输出的结果forloop.parentloop
是指向当前循环的上一级循环的forloop
对象的引用(在嵌套循环的情况下){% ifequal %}
{% ifnotequal %}
标签,比较两个变量的值,比较的参数可以是硬编码的字符串,随便用单引号或者双引号引起来,和{% if %}
类似,支持可选的{% else %}
标签,只有模板变量,字符串,整数,小数可以作为其中的参数,其他的字典、列表、布尔都不可用{# #}
来包裹,只能单行,不能跨越多行,多行的话需要用{% comment %}
和{% endcomment %}
|
,可以被套接,也就是逐层过滤,从左到右过滤处理Django
喜欢在每一个元组元素后面加逗号
,不管它是不是只有一个元素The text was updated successfully, but these errors were encountered: