Pergunta

Não Django tem qualquer tags de template para gerar comum marcação HTML?Por exemplo, eu sei que eu posso obter uma url usando

{% url mapper.views.foo %}

Mas isso só me dá a URL e não o código HTML para criar o link.Não Django tem nada de semelhante ao Rails' helper link_to?Eu encontrei django-ajudantes mas uma vez que este é uma coisa comum eu achei Django teria algo interno.

Foi útil?

Solução

Não, ele não.

James Bennett respondeu a uma semelhante pergunta um tempo atrás, sobre Trilhos' built-in JavaScript ajudantes.

É realmente improvável que Django nunca vai ter 'ajudante' funcionalidade embutida.A razão, se eu entendi corretamente, tem a ver com o Django do núcleo da filosofia de manter as coisas flexível.Ter esse tipo de funcionalidade de ajuda interna leva ao acoplamento Django com uma biblioteca de JavaScript ou (no seu caso) tipo de documento html.

Por exemplo.O que acontece se/quando o HTML 5 é, finalmente, implementado e Django é a geração de HTML 4 ou XHTML marcação?

Tendo dito isso, Django modelo de quadro é realmente flexível, e não seria terrivelmente difícil escreva o seu próprio tags/filtros que fez o que queria.Eu sou mais um designer de mim, e eu tenho sido capaz de reunir um casal de marcas personalizadas que funcionou como um encanto.

Outras dicas

Com o propósito de ajudantes não é, como outros aqui implica, para ajudar os desenvolvedores que não sabem como escrever HTML.O objetivo é encapsular a funcionalidade comum-assim, você não precisa escrever a mesma coisa mil vezes -- e para fornecer um único lugar para editar HTML comuns utilizados em todo o aplicativo.

É a mesma razão modelos e SSI são úteis, e não porque as pessoas não sabem como escrever HTML em seus cabeçalhos e rodapés, mas às vezes você quiser escrevê-lo apenas uma vez.

Por exemplo.O que acontece se/quando o HTML 5 é finalmente, implementado e Django é a geração de HTML 4 ou XHTML marcação?

Mesma coisa que acontece quando o HTML 5 é implementado e todos os seus modelos são escritos em repetitivo HTML, exceto muito mais fácil.

Os outros posts já respondeu a pergunta, ligando para os documentos no modelo personalizado tags;você pode usar tags e filtros para construir o seu próprio, mas não, não há qualquer.

ele não olha como eles são construídos, mas eis aqui alguns trechos.parece que seria muito fácil para criar esses ajudantes:

http://www.djangosnippets.org/snippets/441/

Aqui é um lista de todos os modelo de tags e filtros construídos em Django.Django núcleo não tem tanta HTML helpers como os Trilhos, porque o Django contribuintes assumido que o desenvolvedor web sabe HTML muito bem.Como afirmado por saturdaypalace, é muito improvável para AJAX ajudantes para ser adicionado ao Django, porque ele levaria para acoplamento Django com uma biblioteca de JavaScript.

É muito fácil escreva o seu próprio modelo de tags em Django (muitas vezes você precisa apenas definir uma função, semelhante ao Rails).Você pode implementar mais de Trilhos de ajudantes em Django durante um dia ou dois.

Aposto que se haveria qualquer consentimento de que é html comuns, haveria ajudantes módulo também, apenas para a completude (ou porque outros o têm).;)

Outras que, Django modelo do sistema é feita principalmente para HTML pessoas que já sabem escrever p, img e a etiquetas e não precisa de qualquer auxiliares para que.Por outro lado, existem desenvolvedores Python, que escrever código e não se preocupa se a variável eles colocam no contexto é delimitada por div ou span (exemplo perfeito de separação de preocupações paradigma).Se você precisa ter esses dois mundos para ser associado, você tem de fazer por si mesmo (ou olhar para outro código).

Isso não vai responder diretamente à pergunta, mas por que não usar <a href="{% url mapper.views.foo %}">foo</a> no modelo, então?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top