私はDjango(およびWeb開発)にかなり慣れていないので、この問題に苦労しています。javascriptを使用して単純なタイマーを作成し、タイマーが起動すると更新される変数をモデルに含めたいと考えています。私はそれをする方法に迷っています。
これが私のコードです:
home.html:
<button onclick='activatecount()' value='countdown'>Start Timer</button>
<p id='countdown'></p>
<p id='endofcount'></p>
<script src='{{ STATIC_URL }}timerapp.js'></script>
</body>
</html>
次に、javascript。画面にボタンがあり、ユーザーがボタンをクリックするとタイマーがカウントダウンを開始します。
var myTime = setInterval(displayTime, 1000);//Calls the function displayTime once every second
function subtractSeconds(){
seconds--;
document.getElementById('countdown').innerHTML = seconds; }
var interval;
var minutes = 2;
var seconds = 10;
function activatecount(){
    countdown('countdown');
}
function countdown(element) {
    interval = setInterval(function() {
        var el = document.getElementById(element); 
        if(seconds == 0) { 
            if(minutes == 0) {
                el.innerHTML = "countdown's over!";  
                clearInterval(interval); 
                return;
            } else { 
                minutes--;
                seconds = 60;
            }
        } 
        if(minutes > 0) { 
            var minute_text = minutes + (minutes > 1 ? ' minutes' : ' minute');
        } else {
            var minute_text = '';
        }
        var second_text = seconds > 1 ? 'seconds' : 'second';
        el.innerHTML = minute_text + ' ' + seconds + ' ' + second_text + ' remaining';
        seconds--; 
        }, 1000); 
}
私のviews.py:
def home(request):
    return render_to_response('home.html', context_instance=RequestContext(request))
そして最後に私のmodels.py:
class User(models.Model):
    username = models.CharField(max_length=10)
    email = models.EmailField(max_length=254)
    first_name = models.CharField(max_length = 20)
    last_name = models.CharField(max_length = 20)
    join_date = models.DateField().auto_now_add
    block_count = models.IntegerField()
def __unicode__(self):
    return self.username
タイマーが切れたときにblock_countを1つインクリメントするだけです。(後でさらに機能を追加しますが、この一見些細なことで完全に失われます。)フォームとPOSTを使用してデータベースにデータを送信する方法についての議論しか見つかりませんが、ここではフォームを使用していません。 。
ここでPOSTを使用する必要がありますか?もしそうなら、どのように?