zdt-prov/todo.md
2026-01-03 21:00:11 -03:00

2.3 KiB

Tags

  • autoescape
  • block
  • comment
  • csrf_token
  • cycle
  • debug
  • extends
  • filter
  • firstof
  • for
  • if
  • ifchanged
  • include
  • load
  • lorem
  • now
  • partial
  • partialdef
  • querystring
  • regroup
  • resetcycle
  • spaceless
  • templatetag
  • url
  • verbatim
  • widthratio
  • with

Filters

  • add
  • addslashes
  • capfirst
  • center
  • cut
  • date
  • default
  • default_if_none
  • dictsort
  • dictsortreversed
  • divisibleby
  • escape
  • escapejs
  • escapeseq
  • filesizeformat
  • first
  • floatformat
  • force_escape
  • get_digit
  • iriencode
  • join
  • json_script
  • last
  • length
  • linebreaks
  • linebreaksbr
  • linenumbers
  • ljust
  • lower
  • make_list
  • phone2numeric
  • pluralize
  • pprint
  • random
  • rjust
  • safe
  • safeseq
  • slice
  • slugify
  • stringformat
  • striptags
  • time
  • timesince
  • timeuntil
  • title
  • truncatechars
  • truncatechars_html
  • truncatewords
  • truncatewords_html
  • unordered_list
  • upper
  • urlencode
  • urlize
  • urlizetrunc
  • wordcount
  • wordwrap
  • yesno

Doing

  • filter — super útil (ex.: {{ var|upper }})
  • autoescape — segurança importante
  • spaceless — remove espaços em branco
  • verbatim — como raw
  • url — reverse de URLs (quando tiver routing)
  • cycle — alternar valores em loop
  • firstof — fallback de variáveis
  • load — para custom tags/filters (futuro)
  • csrf_token — quando tiver web

To do

1 - Finalizar o parser — completar as tags que faltam da lista:

  • debug
  • lorem
  • partial / partialdef
  • querystring
  • regroup
  • resetcycle
  • templatetag
  • widthratio

2 - projetar o Context com calma:

  • Estrutura hierárquica (escopos aninhados para with, for, etc.)
  • Suporte a variáveis, listas, structs (models)
  • Acesso por ponto (obj.atributo, lista.0, etc.)
  • Fallback silencioso ou erro (como no Django)

3 - Renderer — com:

  • Resolução de variáveis
  • Aplicação de filtros
  • Herança com block.super
  • Loops com forloop
  • Tudo testado

4 -Filtros