无法在 HTML 中实现 Django



我有一个问题,我无法使用html内部的django变量这是我的代码: Models.py

from django.db import models
from django.urls import reverse
# Create your models here.

class Post(models.Model):
    title = models.CharField(max_length=255)
    slug = models.SlugField(max_length=255, unique=True)
    created = models.DateTimeField(auto_now_add=True)
    content = models.TextField(default="---")
    H_price = models.IntegerField(default=0)
    L_price = models.IntegerField(default=0)
    remaining = models.IntegerField(default=0)
    original_price = models.IntegerField(default=0)
    Ended = models.BooleanField(default=False)
    Published = models.BooleanField(default=True)

    class Meta:
        ordering = ['-created']
        def __unicode__(self):
            return u'%s'% self.title
    def get_absolute_url(self):
        return reverse('Products.views.post', args=[self.slug])

views.py

from django.shortcuts import render
from .models import Post

# Create your views here.
def index(request):
    posts=Post.objects.all()
    return render(request, 'Index.html', {"Posts": posts})
def post(request):
    return

index.html

<h1>This is just a title </h1>
{% for post in posts %}
    <div>
        <h3> {{ post.title }}</h3>
        <h3> {{ post.content }}</h3>
    </div>
{% endfor %}

我知道这不是做HTML的最佳方法,但目标只是使其正常工作,然后我将使用CSS对其进行样式,并在运行服务器时使所有内容看起来都很干净,我只会得到"这只是一个标题"任何帮助我修复的建议都将被重新计算请注意,我是django中的居民

django模板中的变量对案例敏感。您在模板中使用{% for post in posts %},因此您需要在视图中使用posts而不是Posts

return render(request, 'Index.html', {"posts": posts})

最新更新