【发布时间】:2020-08-26 14:40:04
【问题描述】:
当我们写 request.session["tasks"] 并将其分配给 django 视图中的某些东西时,这意味着什么?就像下面的索引函数request.session["tasks"] = [ ] 中的脚本一样,这是否意味着已经为该特定会话创建了一个名为tasks 的空列表?如果是这样,所有这些会话详细信息都存储在 django 中的什么位置?还有add函数中的cleaned_data["task"]在这个脚本中到底做了什么?我尝试查看文档,但找不到任何令人满意的信息,所以如果这听起来有点愚蠢,我很抱歉,但我是 django 的新手,有时语法真的让我感到困惑,感谢任何帮助!
from django.shortcuts import render
from django import forms
from django.http import HttpResponseRedirect
from django.urls import reverse
# Create your views here.
class NewTaskForm(forms.Form):
task = forms.CharField(label = "New Task",min_length=8,max_length=16)
priority = forms.IntegerField(label="Priority",min_value=1,max_value=5)
def index(request):
if "tasks" not in request.session:
request.session["tasks"] = []
return render(request,"index.html",
{
"tasks":request.session["tasks"]
})
def add(request):
if request.method == "POST":
vari = NewTaskForm(request.POST)
if vari.is_valid():
task = vari.cleaned_data["task"]
request.session["tasks"] += [task]
return HttpResponseRedirect(reverse("index"))
else:
return render(request,"other.html",
{
"form":vari
})
return render(request,"other.html",{
"form" : NewTaskForm()
})
【问题讨论】:
标签: python django session-cookies django-sessions