Python Django模型和模板连接
这是我的密码:Python Django模型和模板连接,python,django,Python,Django,这是我的密码: {% extends "blogapp/base.html" %} {% load static %} {% block page_content %} <h1>Projects</h1> {% for project in projects %} <div class="card" style="width: 18rem;"> <img class="card-img-top" src="{% s
{% extends "blogapp/base.html" %}
{% load static %}
{% block page_content %}
<h1>Projects</h1>
{% for project in projects %}
<div class="card" style="width: 18rem;">
<img class="card-img-top" src="{% static 'sampleimg.jpg' %}" alt="Card image cap">
<div class="card-body">
<h5 class="card-title">{{ project.title }}</h5>
<p class="card-text">{{ project.description }}</p>
<a class="btn btn-primary" href="{% url project.detail %}">Read More</a>
</div>
</div>
{% endfor %}
{% endblock %}
views.py
from django.shortcuts import render
from .models import Project
def project_index(request):
projects = Project.objects.all()
context = {
'project':projects
}
return render(request,'blogapp/project_index.html',context)
def project_detail(request,pk):
projects = Project.objects.get(pk=pk)
context = {
'project':projects
}
return render(request,'blogapp/project_detail.html',context)
我添加了2篇来自管理员的帖子,但我看不到运行服务器的时间。下面是一个ss:
我有两篇博文,但我没有看到。有什么问题吗 您的密钥名是project,而不是project。请在html文件中编写以下代码:
{% for p in project %}
您的密钥名是project,而不是project。请在html文件中编写以下代码:
{% for p in project %}
你在传递上下文时犯了一个错误。 您正在上下文中使用键project。但是您在project\u index.html的for循环中引用了projects。将视图中的键名项目更改为项目。 不在任何文件中更改 在项目_索引视图方法中传递上下文字典键的更改如下
如果这些东西有用,请告诉我……您在传递上下文时出错了。 您正在上下文中使用键project。但是您在project\u index.html的for循环中引用了projects。将视图中的键名项目更改为项目。 不在任何文件中更改 在项目_索引视图方法中传递上下文字典键的更改如下
如果这些东西有效,请让我知道……项目索引视图中的键入:
'project':项目
->'projects':项目
项目索引视图中的键入:'project':项目
->'projects':项目
def project_index(request):
projects = Project.objects.all()
context = {
'projects':projects # here change 'project' to projects in dict key
}
return render(request,'blogapp/project_index.html',context)