CS50W Django сессии

В настоящее время я работаю над CS50W и у меня возникла проблема с концепцией Session в Django:

При введении понятия сессии, глобальная переменная 'tasks = []' внедряется в сессию пользователя. Моя проблема в том, что в функции add, tasks.append(task) больше не определена.

У меня именно такой код:

from django import forms
from django.http import HttpResponseRedirect
from django.shortcuts import render
from django.urls import reverse

# Create your views here.

class NewTaskForm(forms.Form):
task =  forms.CharField(label = "New Task")


def index (request): 
if "tasks" not in request.session: 
    request.session["tasks"] = []

return render(request, 'tasks/index.html', {
    "tasks" : request.session["tasks"]
})

def add (request):
if request.method == "POST":
    form = NewTaskForm(request.POST)
    if form.is_valid():
        task = form.cleaned_data["task"]
        tasks.append(task)
        return HttpResponseRedirect(reverse("tasks:index"))
    else : 
        return render (request, 'tasks/add.html', {
                "form": form
            })
return render(request, 'tasks/add.html', {
    "form":NewTaskForm()
})

Я пытался заменить 'tasks.append(task)' на 'request.session["tasks"]', но это не работает.

Вернуться на верх