Телепорт - пользовательский тег django - PullRequest
0 голосов
/ 27 февраля 2009

Помогите пожалуйста с пользовательским тегом django. Проанализируйте это, пожалуйста!

Идея:

  1. В любом шаблоне (родительском или дочернем) мы устанавливаем тег {{telepoint "head"}}, с именем, таких паттеров может быть больше одного.

  2. С другой стороны, у нас есть блок

    {{ teleputter "head" "unique-name" }} some html {{ teleputterend }} 
    

    Содержимое этого блока отправляется телепункту с соответствующим именем телепункта.

1 Ответ

2 голосов
/ 27 февраля 2009

Похоже, вы пытаетесь реализовать наследование шаблонов: http://docs.djangoproject.com/en/dev/topics/templates/#id1

Прочитайте полную документацию для лучшего объяснения. Далее следует версия Reader Digest.

По сути, у вас есть базовый шаблон с блоками содержимого со значениями по умолчанию:

base.html
{% block  head %} "Default html goes here"  {% endblock %}

Затем вы создаете другой шаблон, который расширяет базовый шаблон и строит блоки, которые вы хотели бы заменить:

anotherTemplate.html
{% extends "base.html %}
{% block  head %} "This replaces the html in the base head block"  {% endblock %}

Мне кажется, что ваш "telepoint" - это блок в базовом шаблоне, а ваш "teleputter" - это блок, который расширяет базовый шаблон

Похоже ли это на то, что вы пытаетесь сделать? Что вы пытаетесь реализовать по-другому?

...