Найти - Пользователи
Полная версия: навигация между шаблонами!
Начало » Django » навигация между шаблонами!
1
skripka696
Здравствуйте, подскажите пожалуйста!
у меня есть вот такой класс
class HomeView(TemplateView):
template_name ='testapp/home1.html'
#template_name ='testapp/home2.html'
#template_name ='testapp/home3.html'
def get_context_data(self, **kwargs):
context = super(HomeView, self).get_context_data(**kwargs)

context['author_name'] = get_author()


context['books'] = get_books()
context['list'] = get_list()

return context


файл action.py
from testapp.models import  Author, Book

def get_author():
return [author.first_name for author in Author.objects.all()]

def get_books():
return [book.name for book in Book.objects.all()]

def get_list():
authors = [
(author.first_name, [book.name for book in author.book_set.all()])
for author in Author.objects.all()
]
return authors

и для каждого context у меня свой страница, расширяемая от base.html
подскажите как мне сделать навигаию между этими тремя страницами, класс то один, url тоже один!
я надеюсь что понятно объяснила проблему(
2mitrij
Наверное лучше на каждую страницу сделать отдельную вьюху… со своим урлом. Не понятно, зачем один урл? По какому принципу будет выбираться шаблон? Навигация сама по себе предполагает на каждую страницу свой урл, иначе что прописывать в href ссылки будете?. Как вариант - передавать в параметре урла id страницы, но по сути получаем так и так разные урлы.
FishHook
skripka696
Не смотря на то, что урл как бы один, в гет-хвосте можно передать всё что угодно
<a href="?action=get_autors">Авторы</a>
<a href="?action=get_books">Книги</a>
хотя и непонятно, зачем это надо. Почему не сделать четыре класса: домашнюю страницу, авторы, книги и что там еще, каждая со своим контекстом и шаблоном?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB