我正在尝试检查课程是否已完成(通过检查该页面是否已在登录帐户上访问过一次)。
我一直在尝试检查该页面是否已被访问。如果没有,则应在访问页面数组中添加该 ID。
我正在检查所有可能的情况(或至少是我能想到的情况),当我必须这样做时,我将另一个 lection.id 添加到访问的课程数组中。每次打印此数组后,我看到添加了课程 ID,但未添加到数据库中。(如果我检查数据库或更改页面,课程 ID 就会消失)
视图.py
from django.shortcuts import render
from django.shortcuts import get_object_or_404
from .models import Lectie
def lectii(req):
lectii = Lectie.objects.all().order_by("id")
if req.user.is_authenticated:
if req.user.profile.lectiiRezolvate == None:
lectiiRezolvate=[]
else:
lectiiRezolvate = req.user.profile.lectiiRezolvate
else:
lectiiRezolvate=[]
context = {
'lectii': lectii,
'lectiiRezolvate': lectiiRezolvate
}
print(lectiiRezolvate)
return render(req, '../templates/pagini/lectii-selector.html', context)
def lectie(req, lectie_id):
if req.user.is_authenticated:
if req.user.profile.lectiiRezolvate == None:
req.user.profile.lectiiRezolvate.append(lectie_id)
user.profile.save()
print(req.user.profile.lectiiRezolvate)
else:
if lectie_id in req.user.profile.lectiiRezolvate:
pass
else:
req.user.profile.lectiiRezolvate.append(lectie_id)
print(req.user.profile.lectiiRezolvate)
else:
pass
lectie2 = get_object_or_404(Lectie, pk=lectie_id)
lectiePDF = 'lectii/lectia-{}.pdf'.format(lectie2)
context = {
'lectiePDF': lectiePDF,
'lectie2': lectie2,
}
return render(req, '../templates/pagini/lectii.html', context)
网址.py
from django.urls import path
from . import views
urlpatterns = [
path('', views.lectii, name="lectii"),
path('<int:lectie_id>', views.lectie, name="lectie")
]
lectii-selector.html
我觉得我没有正确地添加到数据库中,我错过了一些东西。我试图通过阅读 django 文档来解决它,但我没有发现任何有用的东西。
所以我想个人资料没有更新,我做错了什么。我怎样才能让它工作?
尚方宝剑之说
相关分类