#python #django
Вопрос:
Вчера я столкнулся с системной проблемой, проблема в том, что записи модели не отображаются на странице, хотя они отображались раньше, я не знаю, в чем проблема, так как все работало раньше
это код views.py
class IndexView(generic.ListView): template_name = 'Homepage/index.html' model = Goods context_object_name = 'goods' def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) numbers = Number.objects.all() context['numbers'] = numbers return context
это код html
{% for number in numbers %} lt;h3 class="numbers"gt;{{numbers.number1_text}}lt;/h3gt; {% endfor %} {% for number in numbers %} lt;h3 class="numbers"gt;{{numbers.number2_text}}lt;/h3gt; {% endfor %}
это кодекс models.py
class Number(models.Model): number1_text = models.CharField(max_length=200) number2_text = models.CharField(max_length=200) def __str__(self): return self.number1_text def __str__(self): return self.number2_text
Ответ №1:
У вас здесь опечатка
{% for number in numbers %} lt;h3 class="numbers"gt;{{numbers.number1_text}}lt;/h3gt; ^here it should be number {% endfor %} {% for number in numbers %} lt;h3 class="numbers"gt;{{numbers.number2_text}}lt;/h3gt; {% endfor %}
Правильный код
{% for number in numbers %} lt;h3 class="numbers"gt;{{number.number1_text}}lt;/h3gt; {% endfor %} {% for number in numbers %} lt;h3 class="numbers"gt;{{number.number2_text}}lt;/h3gt; {% endfor %}
Комментарии:
1. Все еще не работает
2. @Licrencie Вы уверены, что в базе данных есть номера?
3. Не совсем, но модель зарегистрирована в админ-панели и показывает там свои записи
4. Кроме того, когда я запускаю
py manage.py sqlmigrate App 0001
, он показывает мне, что создается такая таблица