我正在尝试使用 python 将数据添加到 html 页面,但页面除了页面上的正常元素外是空白的。
这是我的views.py
:
def index(request):
next = request.GET.get('next', '/admin')
if request.method == "POST":
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
data = Students.objects.all()
return render_to_response("login/profile.html", {'data', data})
else:
HttpResponse("Inactive User.")
else:
print("User Not Found!")
return HttpResponseRedirect(settings.LOGIN_URL)
return render(request, 'login/home', {'redirect_to':next})
这是我的学生模块:
class Students(models.Model):
student_number = models.IntegerField(primary_key=True)
f_name = models.CharField(max_length=20, blank=True, null=True)
l_name = models.CharField(max_length=20, blank=True, null=True)
dob = models.DateField(blank=True, null=True)
address = models.CharField(max_length=144, blank=True, null=True)
county = models.CharField(max_length=20, blank=True, null=True)
phone_number = models.CharField(max_length=45, blank=True, null=True)
email = models.CharField(max_length=45, blank=True, null=True)
gpa = models.IntegerField(blank=True, null=True)
course_code = models.ForeignKey(Courses, models.DO_NOTHING, db_column='course_code', blank=True, null=True)
college = models.ForeignKey(Colleges, models.DO_NOTHING, blank=True, null=True)
passwords = models.CharField(max_length=60, blank=True, null=True)
class Meta:
db_table = 'students'
我的 html 页面:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>HEY!!!!</h1>
<p>
{{ data.f_name}}
{{ data.l_name }}
{{ data.student_number }}
{{ data.dob }}
</p>
<a href="/">logout</a>
</body>
</html>
我已经查找了一段时间,但我似乎无法找到为什么它没有在我的页面上显示任何内容。如果有人可以提供帮助,我将不胜感激!
最佳答案
我花了一段时间,但我想我终于找到了问题的答案。
将其添加到 views.py 中
data = Students.objects.all()
stu = {
"student_number": data
}
return render_to_response("login/profile.html", stu)
然后它遍历存储在 stu
变量中的数据
{% for student in student_number %}
{{ student.f_name}}
{{ student.l_name }}
{{ student.student_number }}
{{ student.dob }}
{% endfor %}
关于python - 使用 django 在 HTML 页面中显示数据库中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36631419/