簡體   English   中英

如何使用 javascript 在 django 模板中設置變量並將其傳遞給 views.py?

[英]How to set variable inside django template with javascript and pass it to views.py?

我想在我的 django 網站上添加一個暗模式選項,當你按下一個按鈕時,我想將一個變量dark-mode設置為True ,當你再次按下它時,它使用 javascript 將dark-mode設置為False ,並在views.py它將根據dark-mode變量將模板名稱設置為home-dark.htmlhome-light.html ,我該如何實現?

如果您需要知道,我使用 Materialize CSS

從現在開始感謝

您可以在 url 中傳遞它,並在您的view中有一個條件,例如:

# your button should href to domain.com/your_view/?mode={your variable}
# then in your view
if request.GET.get('mode') == 'dark':
    return render(request, 'home-dark.html')
return render(request, 'home-light.html')

但這僅適用於一頁,如果您想為整個 session 保留它,我建議您將其添加到request.session中,然后您可以在任何視圖中訪問它。 例如:

# in the above view before returning:
request.session['browse_mode'] = 'dark'

# then in all your views
if request.session.get('browse_mode') == 'dark':
    return render(request, 'dark-mode.html')
return render(request, 'light-mode.html')

暫無
暫無

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

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