如果为Django输入,则进行筛选
我正在Django 2.0课程中开发一个应用程序,每个课程都包含模块,显然我有用户 model.py如果为Django输入,则进行筛选,django,Django,我正在Django 2.0课程中开发一个应用程序,每个课程都包含模块,显然我有用户 model.py Class Course(models.Model): name = models.TextField() ..... Class Module(models.Model): name = models.TextField() containt = models.TextField() ..... Class UserCourse(models.Mod
Class Course(models.Model):
name = models.TextField()
.....
Class Module(models.Model):
name = models.TextField()
containt = models.TextField()
.....
Class UserCourse(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
course = models.ForeignKey(Course, on_delete=models.CASCADE)
flat = models.BooleanField(default=False)
Class UserModule(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
module = models.ForeignKey(Module, on_delete=models.CASCADE)
def course(request, idCourse):
course = Course.objects.get(pk=idCourse)
module = UserModule.objects.filter(user = User.objects.get(pk=request.user.id),module__course=course.id)
return render(request, 'course.html',{'course':course,'module':module})
当用户进入模块时,将在UserModule模型中创建注册表,以知道它已进入模块
我的想法是在模板中显示课程的所有模块,但如果用户已经让模块禁用该选项,则允许进入模块
视图.py
Class Course(models.Model):
name = models.TextField()
.....
Class Module(models.Model):
name = models.TextField()
containt = models.TextField()
.....
Class UserCourse(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
course = models.ForeignKey(Course, on_delete=models.CASCADE)
flat = models.BooleanField(default=False)
Class UserModule(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
module = models.ForeignKey(Module, on_delete=models.CASCADE)
def course(request, idCourse):
course = Course.objects.get(pk=idCourse)
module = UserModule.objects.filter(user = User.objects.get(pk=request.user.id),module__course=course.id)
return render(request, 'course.html',{'course':course,'module':module})
此查询已发送到课程模板
{% for x in course.module_set.all %}
{% if x in module %}
<i class="fa fa-check-circle"></i>
{% else %}
<a href="module"><i class="fa fa-check-circle"></i></a>
{% endif %}
{% endfor %}
{%x在course.module_set.all%}
{x在模块%中为%x}
{%else%}
{%endif%}
{%endfor%}
但不幸的是,如果模块未在模板更改中完成,我无法获得显示链接所需的内容
{% if x in y module %}
到
我错了,这是在“和”上,编辑问题