Firefox не будет обновлять вид более одного раза.(Джанго) - PullRequest
0 голосов
/ 13 декабря 2018

У меня есть простое веб-приложение с 3 логическими полями (флажки).Я создаю базу данных, чтобы сохранить их значения и установить, что только одна может быть проверена.Если я запускаю его в Chrome, он работает как шарм.

Например, при запуске у меня сначала установлен флажок:

enter image description here

Затем ящелкните второй

enter image description here

Это правильное поведение, которое я получаю, используя Chrome.Но когда я использую Firefox, он работает только при первом изменении состояния, тогда я могу установить все флажки.Я проверил базу данных, и внутри нее у меня все время хорошие значения, но Firefox отображает неверное значение.

html

{% for object in objects %}
                    {% if object.is_active %}
                        <input id="active" type="checkbox" checked="checked" onclick="changee({{ object.id }})">
                    {% else %}
                        <input id="active" type="checkbox" onclick="changee({{ object.id }})">
                    {% endif %}
            {% endfor %}

views.py schedule_id is object.id Я передаю html через функцию changee

if request.method == 'POST':
    objects = TimeTable.objects.all()
    if schedule_id is not None:
        schedule_value_change = TimeTable.objects.get(pk=schedule_id)
        schedule_rest = TimeTable.objects.exclude(pk=schedule_id)
        if schedule_value_change.is_active:
            schedule_value_change.is_active = False
        else:
            schedule_value_change.is_active = True
            for schedulerest in schedule_rest:
                schedulerest.is_active = False
                schedulerest.save()
        schedule_value_change.save()
        return redirect('schedule')

Может кто-нибудь сказать мне, что я делаю неправильно?

Кроме того, я добавляю, что, когда я просматриваю логи состояния смены Chrome, я получаю:

[13/Dec/2018 14:42:53] "POST /schedule/ HTTP/1.1" 302 0
[13/Dec/2018 14:42:53] "GET /schedule/ HTTP/1.1" 200 7992
[13/Dec/2018 14:42:53] "GET /schedule/ HTTP/1.1" 200 7992

Но когда я делаю это в Firefox, я получаю

[13/Dec/2018 14:43:23] "POST /schedule/ HTTP/1.1" 302 0
[13/Dec/2018 14:43:23] "GET /schedule/ HTTP/1.1" 200 7992
[13/Dec/2018 14:43:23] "GET /schedule/ HTTP/1.1" 200 7992
[13/Dec/2018 14:43:23] "GET /static/css/home.css HTTP/1.1" 304 0
[13/Dec/2018 14:43:23] "GET /static/js/jquery.js HTTP/1.1" 304 0
[13/Dec/2018 14:43:23] "GET /static/css/schedule.css HTTP/1.1" 304 0
[13/Dec/2018 14:43:23] "GET /static/images/logout.png HTTP/1.1" 304 0
Not Found: /favicon.ico
[13/Dec/2018 14:43:23] "GET /favicon.ico HTTP/1.1" 404 2586

Довольно странно, что все время он статичен и ищет favicon.ico?

PS На Edge это тоже работает, только firefox запаздывает

1 Ответ

0 голосов
/ 13 декабря 2018

Это может быть просто проблема обновления.Если на этой странице нет ничего, что могло бы повлиять, попробуйте выполнить кодирование в динамическом обновлении / перезагрузке страницы после щелчка, чтобы убедиться, что это работает.Во всяком случае, это поможет вам устранить неполадки.

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