Django Tutorial Part 6. Упорядочивание содержимого таблицы в произвольном порядке в приложении для опросов

https://docs.djangoproject.com/en/4.0/intro/tutorial03/#write-views-that-actually-do-something

from django.shortcuts import render
from django.http import HttpResponse
from .models import Question

def index(request):
    latest_question_list = Question.objects.order_by('-pub_date')[:3]
    output = ', '.join([q.question_text for q in latest_question_list])
    return HttpResponse(output)
Войдите в полноэкранный режим Выход из полноэкранного режима

Импорт таблицы вопросов из моделей

<QuerySet [
  <Question: What's new?>, <Question: Question 2>,
  <Question: Questions 3>, <Question: Questions 4>
]>
Войдите в полноэкранный режим Выход из полноэкранного режима

Извлечь до трех объектов в таблице «Вопрос», отсортированных по дате создания.

["What's new?", 'Question 2', 'Questions 3', 'Questions 4']
Войдите в полноэкранный режим Выход из полноэкранного режима

, для конкатенации расширенного списка из предыдущего шага.

В админке, даже если у вас есть до Квестинонов 4.

Только три выстроены из последних 4 по 2.

latest_question_list = Question.objects.order_by('-pub_date')[:4]
Войдите в полноэкранный режим Выход из полноэкранного режима

Если вы измените это значение на 4

Самые старые, от самого последнего до четвертого вопроса_текста, выстраиваются в ряд.

latest_question_list = Question.objects.order_by('pub_date')[:4]
Войдите в полноэкранный режим Выход из полноэкранного режима

Измените -pub_date на pub_date.

Список отсортирован в порядке от самого старого к самому новому.

output = ' | '.join(
  [q.question_text for q in latest_question_list]
)
Войдите в полноэкранный режим Выход из полноэкранного режима

Измените разделитель на |.

Я не думаю, что вам следует менять разделитель на более заметный, так как забота о представлении — это работа front-end.

Следующий раз: шаблон.
Включите polls/template/index.html в представление и передайте данные таблицы в HTML.

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *