Я просматривал документацию Django и столкнулся с двумя способами отображения данных объекта. Мне интересно, можем ли мы использовать как get_query_set()
, так и get_context_data
внутри одного представления. Например, если у меня есть 3 модели с именем Publisher, Books, Author
, где Books
и Author
связаны друг с другом с полем ManyToMany
, а Books
и Publisher
связаны через ForeignKey
.
есть вид
template_name='some_name.html'
Существует 2 способа отображения данных через получение объектов.
self.Publisher=get_object_or_404(Publisher,name=self.kwargs('name_of_publisher')
return Books.objects.filter(publisher=self.publisher)
Я думаю, он вернет все объекты Книги, связанные с name_of_publisher
. Я хочу спросить, как будут отображаться данные? Будет ли цикл в шаблонах? Как будет выглядеть URL и если не определено context
, то как будут отображаться данные?
2-й метод, с которым я столкнулся, это
def get_context_data(self,**kwargs):
context=super().get_context_data(**kwargs)
context['publisher']=self.publisher
return context
Я нашел работу этого очень запутанным. Я не могу понять, как это работает здесь. Я тоже читал здесь другие посты на случай, если вы попытаетесь дать мне ссылку. За это заранее спасибо. Но что я знаю, так это то, что оба они могут быть использованы внутри одного template
и ListView
? Если да, пожалуйста, опишите, как будет выглядеть файл template
.