Django不';不显示数据库内容
我已经定义了模型和视图。我想显示数据库中已有的项目。但是,脚本未显示任何内容。问题出在哪里?请查看使用for循环从数据库显示项目的文件的模型、视图和html模板的定义 型号.pyDjango不';不显示数据库内容,django,django-templates,django-views,Django,Django Templates,Django Views,我已经定义了模型和视图。我想显示数据库中已有的项目。但是,脚本未显示任何内容。问题出在哪里?请查看使用for循环从数据库显示项目的文件的模型、视图和html模板的定义 型号.py from django.db import models from bifrost.models import CustomUser # Create your models here. # Model Projektu class Project(models.Model): PROJECT_TYPE =
from django.db import models
from bifrost.models import CustomUser
# Create your models here.
# Model Projektu
class Project(models.Model):
PROJECT_TYPE = (
('SCR', 'Scrum'),
('KAN', 'Kanban'),
)
project_key = models.CharField(max_length=8, primary_key=True)
project_name = models.CharField(max_length=160)
project_type = models.CharField(max_length=10, choices=PROJECT_TYPE, null=True)
date_created = models.DateField(null=True)
# Definicja nazwy modelu w Adminie Django
def __str__(self):
return self.project_name
from django.views.generic import ListView
from django.shortcuts import render
from .models import Project
# Create your views here.
class ProjectListView(ListView):
model = Project
template_name = 'project-list.html'
contect_object_name = 'projects_list'
def projectslist(request):
projects = Project.objects.all()
return render(request, 'project_list.html', {'projects': projects})
视图.py
from django.db import models
from bifrost.models import CustomUser
# Create your models here.
# Model Projektu
class Project(models.Model):
PROJECT_TYPE = (
('SCR', 'Scrum'),
('KAN', 'Kanban'),
)
project_key = models.CharField(max_length=8, primary_key=True)
project_name = models.CharField(max_length=160)
project_type = models.CharField(max_length=10, choices=PROJECT_TYPE, null=True)
date_created = models.DateField(null=True)
# Definicja nazwy modelu w Adminie Django
def __str__(self):
return self.project_name
from django.views.generic import ListView
from django.shortcuts import render
from .models import Project
# Create your views here.
class ProjectListView(ListView):
model = Project
template_name = 'project-list.html'
contect_object_name = 'projects_list'
def projectslist(request):
projects = Project.objects.all()
return render(request, 'project_list.html', {'projects': projects})
project-list.html模板
{% extends 'base.html' %}
<h1 class="h3 mb-2 text-gray-800">{% block title %}Projects{% endblock title %}</h1>
{% block content %}
<!-- DataTales Example -->
<div class="card shadow mb-4">
<div class="card-header py-3">
<h6 class="m-0 font-weight-bold text-primary">List of Projects</h6>
</div>
<div class="card-body">
<div class="table-responsive">
<table class="table table-bordered" id="dataTable" width="100%" cellspacing="0">
<thead>
<tr>
<th>Project Key</th>
<th>Name</th>
<th>Type</th>
<th>Created</th>
</tr>
</thead>
<!-- <tfoot>
<tr>
<th>Project Key</th>
<th>Name</th>
<th>Type</th>
<th>Created</th>
</tr>
</tfoot> -->
<tbody>
{% for project in projects_list %}
<tr>
<td>{{ project.project_key }}</td>
<td>{{ project.project_name }}</td>
<td>{{ project.project_type }}</td>
<td>{{ project.date_created }}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock content %}
{%extends'base.html%}
{%block title%}项目{%endblock title%}
{%block content%}
项目清单
项目密钥
名称
类型
创建
{项目列表%中的项目的百分比}
{{project.project_key}
{{project.project_name}
{{project.project_type}
{{project.date_created}
{%endfor%}
{%endblock内容%}
调试器未显示任何问题。Pylint只显示小建议,也没有错误。
{%for projects in projects\u list%}
更改模板中的此行,因为您在上下文中将项目作为键传递,并且正在使用项目列表
请尝试{%for projects%}
它应该可以工作。
{%for projects in projects\u list%}
更改模板中的此行,因为您在上下文中将项目作为键传递,并且正在使用项目列表
请尝试{%for projects%}
它应该可以工作。从视图文件中,您将项目作为参数传递,例如:
返回render(请求,'project\u list.html',{'projects':projects})
,在模板文件中,您将使用projects\u list访问它,而这不会返回任何内容
在模板文件替换中:
{%for projects\u list%}
与:
{%用于项目中的项目%}
它会起作用。从视图文件中,您将项目作为参数传递,例如:
返回渲染(请求,'project\u list.html',{'projects':projects})
,在模板文件中,您将使用项目列表访问它,它不会返回任何内容
在模板文件替换中:
{%for projects\u list%}
与:
{%用于项目中的项目%}
它会起作用的。谢谢你,这很清楚,你说的没错。然而,在更新循环的
之后,我仍然没有打印出结果。有什么想法吗?@yorgwarez还有,结束块应该写成{%endblock%}
而不是{%endblock content%}
谢谢你,很清楚,你说的没错。然而,在更新
循环的之后,我仍然没有打印出结果。有什么想法吗?@yorgwarez还有,结束块应该写成{%endblock%}
而不是{%endblock content%}
谢谢你,很清楚,你说的没错。然而,在更新for循环之后,我仍然没有打印出结果。有什么想法吗?谢谢,很清楚,你说的没错。然而,在更新for循环之后,我仍然没有打印出结果。有什么想法吗?