首页 > 解决方案 > 如何将视图中的项目渲染到模板?

问题描述

我是 django 的初学者,在这里遇到了问题。我的模型


from django.db import models

# Create your models here.
class course_name(models.Model):
    faculty_name=models.CharField(max_length=100)
    def __str__(self):
        return self.faculty_name


class subject(models.Model):
    subject_name=models.CharField(max_length=100)
    faculty_names=models.ForeignKey(course_name,on_delete=models.CASCADE)
    def __str__(self):
        return self.subject_name

class lectures(models.Model):
    lecture_topic=models.CharField(max_length=100)
    lecture_number=models.IntegerField(null=False)
    subjects=models.ForeignKey(subject,on_delete=models.CASCADE)
    def __str__(self):
        return self.lecture_topic


class lecture_dets(models.Model):
    lecture_pdfs=models.FileField(upload_to='documents',null=True)
    lecture_vids=models.FileField(upload_to='videos',null=True)
    lecture_notes=models.FileField(upload_to='notes',null=True)
    lecture_name=models.ForeignKey(lectures,on_delete=models.CASCADE)
    def __str__(self):
        return f'{self.lecture_name}' 

也是我的views.py

def Lectures(request,lecture_number):
        Lectures = lectures.objects.filter(lecture_number=lecture_number)
        context={"lectures":Lectures}
        return render(request,'home/lectures.html',context)

我想在我的模板中呈现视图,但我无法在模板 Lectures.html 中使用 Lecture_number。我认为有默认 id 字段但不知道如何开始?

标签: pythondjangoweb

解决方案


只需在上下文中"lecture_number"传递:"lectures"

context={"lectures":Lectures, "lecture_number": lecture_number}
return render(request,'home/lectures.html',context)

并在模板中渲染它:

{{ lecture_number }}

推荐阅读