MM:SS格式的默认时间-Django

时间:2018-10-26 20:46:37

标签: javascript python django

我已经使用Javascript为倒数计时器编写了代码,并且为了使其动态化,我给了管理员一个选项,可以相应地更改时间。 javascript在MM:SS中接受输入,我在model.py中使用了以下数据类型,并且系统以HH:MM格式接受​​它,因此我不能将时间设置为超过24分钟(显示的值来自00:00至23:00。是否有任何数据类型或解析时间格式的方法。我的应用程序需要MM:SS中的计时器,并且不需要几个小时。

model.py

class PhysicalPostPage(AbstractForm):
    intro = RichTextField(blank=True)
    strength = RichTextField(blank=True)
    agility = RichTextField(blank=True)
    flexibility = RichTextField(blank=True)
    points_for_this_activity = models.IntegerField(blank=True, default=0)
    timer_for_this_activity = models.TimeField(blank=True, default=datetime.time(00, 11))
    thank_you_text = RichTextField(blank=True)

出于测试目的,我将计时器设置为11秒。

javascript

function doCount(){
            var timer2 = "{{ page.timer_for_this_activity|safe }}";
            var interval = setInterval(function() {
                var timer = timer2.split(':');
                //by parsing integer, I avoid all extra string processing
                var minutes = parseInt(timer[0], 10);
                var seconds = parseInt(timer[1], 10);
                --seconds;
                minutes = (seconds < 0) ? --minutes : minutes;
                seconds = (seconds < 0) ? 59 : seconds;
                seconds = (seconds < 10) ? '0' + seconds : seconds;
                //minutes = (minutes < 10) ?  minutes : minutes;
                $('#countdown').html(minutes + ':' + seconds);
                if (minutes < 0)
                    clearInterval(interval);
                //check if both minutes and seconds are 0
                if ((seconds <= 0) && (minutes <= 0)){
                    clearInterval(interval);
                    $('#done').show();
                    $('#countdown').hide();
                }
                timer2 = minutes + ':' + seconds;
            }, 1000);
        }  

1 个答案:

答案 0 :(得分:1)

我通过使用CharField数据类型解决了此问题。因为我传递了一个字符串,它解决了我的问题。