Действительно ли возможно предотвратить основную шаблонную перезагрузку с помощью шаблонного наследования django?

В регионе заголовка моего основного шаблона (main.html) я поместил медиаплеер HTML5, который вытягивает в содержании, загруженном через мой администраторский интерфейс.

То, что я пытаюсь сделать, когда дорожки были загружены однажды, имейте медиаплеер, остаются незатронутыми внутренней навигацией сайта. Другими словами, медиаплеер продолжает играть, но пользователь может просмотреть сайт, не прерывая воспроизведение / перезагрузка дорожек.

Это - довольно простая установка. Существует один основной шаблон, и каждый из других разделов (скажите, ведите блог, свяжитесь, и о) все блоки содержания, загруженные в рамках того же самого шаблонного использования:

{% extends 'main.html' %}

Насколько я понимаю, когда шаблонная система оценивает дочерний шаблон, сначала она загружается, родитель затем заполняет дочерние блоки, как определено. Я логически, и возможно неправильно, предположил, что дочерние регионы блока 'вытянут в' родителя. Однако прочитавший django документы о шаблонном наследовании, казалось бы, что то, что на самом деле происходит, является своего рода обратным поиском: найдите родителя>, родитель загрузки> находит, что блоки> заполняют блоки. Поскольку у меня есть настроенный в данный момент, каждый раз, когда на ссылку нажимают, медиа прекращает играть и перезагружается.

Таким образом, мой вопрос состоит в том, пропустил ли я что-то фундаментальное в способе, которым работает движок шаблонов django, и возможно достигнуть того, что я после просто использую движок шаблонов, или невозможно ли это, и я должен сделать это некоторый другой путь (например, через Ajax). Это - первый раз, когда я попытался сделать что-либо как это в django, таким образом, я не был бы вообще удивлен, если это - первый.

1
задан hellojelly 29 June 2010 в 11:33
поделиться

1 ответ

Я пытаюсь сделать так, чтобы после однократной загрузки треков на медиаплеер не влияла внутренняя навигация по сайту. Другими словами, медиаплеер продолжает воспроизведение, но пользователь может просматривать сайт, не прерывая воспроизведение / повторную загрузку треков.

Это касается не Django-шаблонов, а того, как структурирована ваша HTML-страница. Медиаплеер не заменяется в Django, а заменяется в браузере путем перезагрузки страницы.

Что вы можете сделать:

  • Пусть все работает через Ajax.
  • Все остальные страницы должны выполняться в теге