В django я пытаюсь получить коллекцию слов, но моя функция возвращает "ничего".
У меня есть страница, посвященная изучению иностранных языков, на которой также есть игра на запоминание, которая работает путем отображения случайного слова. Я хотел бы использовать ту же базу данных, что и в игре, для отображения словаря "слово: перевод" со всеми словами в алфавитном порядке. спасибо
вот мой файл views.py
from django.shortcuts import render
from cards.models import Card
def lexicon(request):
card_list = Card.objects.all()
context = {'card_list': card_list}
return render(request, 'lexicon/lexicon.html', context)
и это мой html
<main>
<div class="container-small">
{% for card in card_list %}
<p>{{ card.question }}</p>
<p>{{ card.answer }}</p>
{% endfor %}
</div>
</main>
Мой файл db.sqlite3 имеет такую структуру структура базы данных
Попробуйте модифицировать представление, чтобы получить все слова из базы данных и передать их в шаблон в алфавитном порядке. Вы можете попробовать сделать это, упорядочив набор запросов по алфавиту с помощью поля word.
def lexicon(request):
card_list = Card.objects.all().order_by('question')
context = {'card_list': card_list}
return render(request, 'lexicon/lexicon.html', context)
N.B.: Убедитесь, что в вашей модели Card есть соответствующие поля для слова и его перевода.