Почему Django не берет целое число в БД и не отображает его в шаблоне HTML?
У меня есть следующий базовый код, который предназначен для получения числа X, добавления простого значения "+1" в качестве доказательства концепции, а затем сохранения этого числа обратно в базу данных. Кроме того, мне нужен шаблон jinja на основе Django, чтобы вытащить это число и отобразить его на веб-сайте.
Мой вопрос: почему номер не отображается? Я получаю только пробел, где число должно быть отображено, и если я удаляю фильтр [:1], div генерируется 3x; это говорит мне, что проблема может быть где-то в этой строке, но я в растерянности. Код является:
/views.py:
from django.shortcuts import render
from django.http import HttpResponse
from django.template import Context, loader
from home.models import DeathNum
def index(request):
counter = DeathNum.objects.get(pk=1)
fj = counter.deaths
t = loader.get_template('home/basenum.html')
c = {'number_post': str(fj)[:1]}
return HttpResponse(t.render(c))
def increment(request):
counter1 = DeathNum.objects.get(pk=1)
counter1.deaths += 1
counter1.save()
t = loader.get_template('home/basenum.html')
c = {'number_post': str(counter1)[:1]}
return HttpResponse(t.render(c))
/models.py:
from django.db import models
class DeathNum(models.Model):
deaths = models.IntegerField()
def __str__(self):
return "{0}/{1}\n".format(self.id, self.deaths)
/basenum.html:
{% extends "home/index.html" %}
{% block content %}
<br />
<div class="banner">
<div class="bannerNum">
<p div class="numberOf">
Number of deaths in Blank since 1999:
</p>
{% for post in number_post %}
<br /><br /><br />
<p class="death1">
{{ post.deaths }}
</p>
{% endfor %}
</div>
</div>
{% endblock %}
1 ответ
Ответь на твой вопрос.
number_post
это строка Зачем цикл отображать str
? Удалите цикл for из вашего шаблона и просто добавьте это...
{{ number_post }}
Или же
Еще одно решение вашего вопроса
Я верю, что вы хотите показать все смерти. Пожалуйста, рассмотрите ниже подход?
death_nums = DeathNum.objects.all()
return render(request, 'deaths.html', {'death_nums': death_nums})
И в HTML
{% for death_num in death_nums %}
{{ death_num.deaths }}
{% endfor %}