Время по умолчанию в формате MM: SS - Django - PullRequest
0 голосов
/ 26 октября 2018

Я написал код для таймера обратного отсчета, используя 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 1011 *

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 голосов
/ 31 октября 2018

Я решил эту проблему, используя тип данных CharField. Так как я передавал строку, и это решило мою проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...