Как вывести заголовки на сайте?
В djnago есть order_by,там указывают поле которое хотят вывести,вот я и хочу вывести все заголовки на сайт,но при выводится <QuerySet [<News: Epic Games через суд добивается восстановления учётной записи в App Store>, <News: Киберпанк выйдет в 2020!>]>, как сделать так что бы выводились просто слова,а не список?
Ответы (2 шт):
Не совсем понятно, что именно вы хотите сделать.
order_by('') указывает Django в каком порядке отсортировать queryset. Например, у вас в модели Articles есть поле updated. Если вы хотите получить экземпляры статей, отсортированных в порядке обновления, то запрос queryset будет выглядеть так Articles.objects.all().order_by('updated'). Прочитайте подробнее о order_by в официальной документации (перевод на русском)
Если вы хотите вывести на сайте заголовки новостей, в шаблоне используйте следующий код:
{% for objects in news %}
<h1>{{ object.title }}</a>
{% endfor %}
Для этого вы должны передать в шаблон queryset. Как один из вариантов, используйте в представлении
...
context = {
'news': News.objects.all()
}
return render(request, 'news.html', context)
Узнайте больше про использование queryset здесь
{% for n in news %}
<h1>{{ n }}</a>
{% endfor %}
Просто создать цикл в котором news - переменная, переданная в контекст. news будет хранить статьи( news=Model.objects.all() ). Да и вы не совсем поняли, что такое order_by. Он сортирует записи по определенному полю, по определенному порядку и количеству.