DTL(Django templeate language)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DTL(Django templeate language)相关的知识,希望对你有一定的参考价值。
??????????????? lag ?????? -- sel wrap nbsp ?????? mesi
??? ??????
????????? def dtl(request): num = 3.14 ss = ???abc123????????? # return render(request, ???django_dtl.html???, {???number???: num, ???ss???: ss}) result = True list = [1, 2, 3, 4, 5] dic = {???name???: ???owen???, ???age???: 28} # ????????????????????????????????????{{ fn }} ??????????????????????????????????????????????????????????????? def fn(): return "fn function" class Person: name = "name" def __str__(self): return "??????Person???" p = Person() # locals()??????????????????????????????????????? return render(request, ???django_dtl.html???, locals()) ????????? ????????? <li>{{ num }}</li> <li>{{ list }} -- {{ list.0 }}</li> <li>{{ dic }} -- {{ dic.age }}</li> <li>{{ Person }}</li> # Person() => __str__???????????? <li>{{ 123 }}</li> # ???????????????????????????????????????????????? ?????????
??? ?????????
????????? 1.????????? -- {{ ??????|?????????1[[:??????]|...|?????????n[:??????]] }} -- ????????????????????????????????????????????????0??????1????????? 2.????????????filter -- ?????? add:num -- ??????????????? length -- ????????? default:??????????????? # ???????????????????????? -- ????????? upper -- ????????? lower -- ?????? slice:???0:-1??? -- ?????????????????????????????? filesizeformat -- ??????????????? truncatechars:13 # ?????????10??????????????????????????????...????????? -- ?????? date:???Y-m-d??? -- ???????????? safe ?????????
??? ??????
????????? 1.????????? -- {% ????????? arg1 ... argn %} eg: {% url ???test??? 1 2 3 %} => /test/1/2/3/ 2.????????? -- ????????????url {% url ???namespace:url_name??? arg1 arg2 %} -- ????????????now {% now ???Y-m-d??? %} -- ?????????with {% with ??????????????????flag??????????????? as flag %} {{ flag }} {% endwith %} -- Django CSRF?????? {% csrf_token %} ?????????
??? ??????
????????? ????????? {% if ??????1 %} ??????1 {% elif ??????2 %} ??????2 {% else %} ??????n {% endif %} ?????? 1. if?????????????????????filter 2. ???????????? ?????????
??? ?????????
????????? {% for foo in iterate %} {{ forloop }} {% empty %} ????????????????????? {% endfor %} ?????? 1. iterate?????????????????? 2. iterate????????????filter 3. forloop?????????????????????????????????????????????forloop????????????????????????0?????????1????????????????????????0?????????1???????????????????????????????????????????????? 4. empty??????????????????????????????????????????????????? ?????????
??? ???????????????????????????
????????? ????????? 1. ????????????app?????????templatetags??? 2. ???????????????????????????py???????????????owen_tags.py 3. ?????????????????????filter???tag???????????????????????????????????????py??????????????????{% load owen_tags %} 4. ?????????filter?????? from django.template import Library register = Library() @register.filter(name=???jump???) def owen_jump(value, arg): try: return value * int(arg) except (ValueError, TypeError): return ?????? 5. ?????????tag?????? @register.simple_tag(name=???add_two???) def owen_add(arg1, arg2): try: return int(arg1) + int(arg2) except (ValueError, TypeError): try: return arg1 + arg2 except Exception: return ?????? 6. ???????????????????????????py?????????????????????????????????????????? {{ 10|jump:2}} # 10 * 2 {% add_two 10 20 %} # 10 + 20 ?????????
??????????????????(??????)
{{ 123|add:"5" }} ???value?????????????????? {{ "AB???CD"|addslashes }} ????????????????????????????????????????????????javascript??? {{ "abcd"|capfirst }} ????????????????????? {{ "abcd"|center:"50" }} ???????????????????????????????????????????????? {{ "123spam456spam789"|cut:"spam" }} ??????????????????????????? {{ value|date:"F j, Y" }} ??????????????? {{ value|default:"(N/A)" }} ?????????????????????????????? {{ value|default_if_none:"(N/A)" }} ??????None?????????????????? {{ ????????????|dictsort:"??????" }} ?????????????????? {{ ????????????|dictsortreversed:"??????" }} ?????????????????? {{ string|escape }} ?????????html?????? {{ 21984124|filesizeformat }} ???1024????????????????????????????????????1??????????????????????????? {{ list|first }} ??????????????????????????? {{ "ik23hr&jqwh"|fix_ampersands }} &??????& {{ 13.414121241|floatformat }} ??????1??????????????????????????????????????? {{ 13.414121241|floatformat:"2" }} ??????2????????? {{ 23456 |get_digit:"1" }} ???????????????????????????????????????1????????? {{ list|join:", " }} ?????????????????????????????? {{ list|length }} ?????????????????? {% if ??????|length_is:"3" %} ?????????????????????????????? {{ "ABCD"|linebreaks }} ???????????? {{ "ABCD"|linebreaksbr }} ???????????? ???????????? {{ ??????|linenumbers }} ????????????????????????????????? {{ "abcd"|ljust:"50" }} ???????????????????????????????????????????????????????????? {{ "ABCD"|lower }} ?????? {{ "abcdefghijklmnopqrstuvwxyz"|phone2numeric }} ?????????????????????????????????????????? {{ ???????????????|pluralize }} ??????????????????????????????????????????????????????1?????????s????????????????????? {{ ???????????????|pluralize:"es" }} ??????es {{ ???????????????|pluralize:"y,ies" }} ??????ies?????????y {{ object|pprint }} ???????????????????????? {{ ??????|random }} ??????????????????????????? {{ string|removetags:"br p div" }} ????????????????????????html?????? {{ string|rjust:"50" }} ???????????????????????????????????????????????????????????? {{ ??????|slice:":2" }} ?????? {{ string|slugify }} ????????????????????????????????????????????????????????????????????????????????? {{ 3|stringformat:"02i" }} ????????????????????????Python???????????????????????? {{ "EABCD"|striptags }} ??????[X]HTML???????????? {{ ????????????|time:"P" }} ??????????????????????????? {{ datetime|timesince }} ?????????????????????????????????????????? {{ datetime|timesince:"other_datetime" }} ????????????????????????????????? {{ datetime|timeuntil }} ?????????????????????????????????????????????????????????????????????2???????????????????????? {{ datetime|timeuntil:"other_datetime" }} ????????????????????????????????? {{ "abdsadf"|title }} ??????????????? {{ "A B C D E F"|truncatewords:"3" }} ??????????????????????????? {{ "111221"|truncatewords_html:"2" }} ?????????????????????html????????????????????? {{ list|unordered_list }} ???????????????????????????html??????????????? {{ string|upper }} ???????????? {{ string|urlize }} ???URLs??????????????????????????????????????????????????????????????? {{ string|urlizetrunc:"30" }} ??????????????????????????????????????????????????????????????? {{ "B C D E F"|wordcount }} ????????? {{ "a b c d e f g h i j k"|wordwrap:"5" }} ?????????????????????????????????????????? {{ boolean|yesno:"Yes,No,Perhaps" }} ?????????????????????????????????????????? ??????,???,None
以上是关于DTL(Django templeate language)的主要内容,如果未能解决你的问题,请参考以下文章