簡體   English   中英

Django從Context_Processor函數中訪問會話變量

[英]Django Accessing Session Variable from within Context_Processor function

我在視圖中設置了一個會話變量:

def festival_theme(request, year, month, day, slug):
    festival = Project.objects.get(category__name=__('festival'), slug=slug)

    request.session['_active_festival_id'] = festival.id

    return render(request, 'web/festival/theme.html', {'festival':festival,})

比我的上下文處理器函數里面我想得到這個會話變量的值。 我怎樣才能實現這一目標?

我努力了:

#context_processors.py
def festivals(request):
    s = SessionStore()
    activeFestivalId = s['_active_festival_id']
    allFestivals = Project.objects.filter(category__name='festival').order_by('-date')
    return {'allFestivals':allFestivals}

您應該能夠在上下文處理器中使用request.session來訪問會話。

#context_processors.py
def festivals(request):
    activeFestivalId = request.session.get('_active_festival_id', None)
    allFestivals = Project.objects.filter(
        category__name='festival').order_by('-date')
    return {'allFestivals': allFestivals}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM