【问题标题】:How to use sessions in Django如何在 Django 中使用会话
【发布时间】:2015-11-08 18:23:54
【问题描述】:
# In mypage.html
<form method='get' action=''>
    <input type="submit" value="add" name="add"/>
</form>
<h1>{{ p }}</h1>


# In the views.py file
p = 1
def mypage(request):
    global p
    my_dictionary = {
        "p" : p,
    }
    if request.GET.get('add'):
        p = p+1
        if 'p' in request.session:    
            request.session['p'] = request.session['p'] + 1
        else:
            request.session['p'] = 1
        my_dictionary = {
            "p" : p,
        }
    return render(request, "mypage.html", my_dictionary)

mypage.html 在单击按钮"add" 时实质上将p 加1。但是,我希望在刷新页面时将添加重置回p=1。我该怎么做呢?
谢谢。

【问题讨论】:

  • 另外,会话是共享给所有用户还是只共享给当前用户?

标签: python html django session django-sessions


【解决方案1】:

&lt;input type="submit" value="add" name="add"/&gt; 无效。提交按钮上不能有数据。

添加&lt;input type="hidden" name="add" value="add"&gt;。而是。

否则你的用法是正确的。会话是每个用户的,而不是共享的。

此外,我建议不要将GET 用于此类请求。 GET 仅应在请求未更改服务器上的任何内容时使用。这可能是一个极端情况,但如果你想对模型做同样的事情,你绝对应该使用POST

【讨论】:

    猜你喜欢
    • 2011-11-22
    • 1970-01-01
    • 2011-04-11
    • 2014-08-09
    • 1970-01-01
    • 2020-03-06
    • 2015-10-24
    • 2011-07-10
    相关资源
    最近更新 更多