2014-11-26 2 views
0

Можно ли сделать следующее в шаблонах Django, используя теги шаблонов? У меня есть несколько div, которые генерируются, например.Создание имени класса по позиции в шаблоне django?

ДИВ-template.html

<div class="id-{{ id_num }}-pos{{ id_pos }}"></div> 

ряд других файлов шаблонов включает в себя этот файл с помощью использования шаблона тегов, например

{% render_div div_id="980x250" %} 

Тег шаблона установлен использовать первый фрагмент кода в качестве шаблона. Я хочу знать, может ли django динамически получить позицию div (через некоторую логику в теге шаблона). Например, если я имел дивы, идущие вертикально вниз страницы, я хочу, чтобы первый ДИВ иметь свой класс как

<div class="id-980x250-pos1"></div> 

если это параметры, передаваемые {% render_div ad_id="980x250" %} для рендеринга сНа тега шаблона.

Второй ДИВ иметь

<div class="id-300x250-pos2"></div> 

если это называлось {% render_div ad_id="300x250" %} и так далее.

Логически я пытаюсь обернуть мозг вокруг этого, есть один шаблон, который вызывается, и мне нужно его иметь, чтобы значение pos генерировалось на основе его положения сверху (1) донизу. Я не могу передать значение div_pos тегу шаблона, потому что этот тег шаблона в одном конкретном шаблоне может использоваться в другом шаблоне, в котором эта позиция неверна.

Сложно объяснить, но, надеюсь, вы получите эту идею.

ответ

0

Я не думаю, что это возможно в django, поскольку django не отображает полученный html. (даже если бы это было так, я не думаю, что вы могли бы гарантировать те же результаты, что и в разных существующих браузерах.).

Лучший подход для этого, вероятно, будет с некоторым javascript. Например, JQuery имеет function that returns the position of an element.

+0

yeh thats, что я думал. Ну, я думаю, я думаю, что это более простой способ сделать это. благодаря – Deep

Смежные вопросы