0

Django Web サイトでカウントしようとしています。グローバル変数 testc を使用してカウントします (これが問題の原因であることはわかっていますが、グローバル変数なしでカウントを行う方法がわかりません)。したがって、2 つのブラウザーが同時に Web サイト (threadtest.html) を開くと、両方のブラウザーで同じ testc が増加します (もちろん)。各ブラウザ セッションで個別にカウントする方法はありますか? マルチスレッドを使用する必要がありますか? ありがとう。

これが私の見解です:

testc=0
def threadtest(request):
    global testc
    if request.method == 'POST':
        testc=testc+1
        print testc
    return render(request,'threadtest.html',{'count':testc,})

テンプレートは次のとおりです: base.html

{% load staticfiles %}
{% load static %}
{% load extra_tags %}
<html>
<head>
<title>{% block title %}{% endblock %}</title>


{%block myscripts %}{% endblock %}

</head>
<body>
<div id="content">
    {% block content %}{% endblock %}
</div>

</body>
</html>

threadtest.html

{% extends 'base.html' %}
<html>
<head><title></title></head>

<body>

{% block content %}
<h1> Current count is </h1>
<h1> {{count}} </h1>
<form action="/threadtest/" method="post">{% csrf_token %}
<input type= "submit" name = "button" value = "addit" />
</form>
{% endblock %}
</body>
</html>
4

1 に答える 1

1

その情報は次の場所から取得できます。

request.META['HTTP_USER_AGENT']

一部の出力は、たとえば次のようになります。

   Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.70 Safari/537.36

このスニペットが役に立つかもしれません

于 2013-07-11T03:26:45.697 に答える