2016-05-07 1 views
0

Я довольно новичок в Gjango и Python. Вот что у меня есть:GET-запрос от шаблона Django, работающего в Firefox, но не в Chrome

  1. приложение/urls.py

    urlpatterns = [ 
        url(r'^upvote/(?P<id>[0-9]+)/$', views.upvote, name='upvote'), 
    ] 
    
  2. views.py

    def upvote(request, id): 
        print(id) 
        try: 
         link = Link.objects.get(id=id) 
        except: 
         print('err') 
        link.vote = link.vote + 1 
        print(link.vote) 
        link.save() 
        return HttpResponseRedirect('/news/') 
    
  3. И в шаблоне

    <a href="/news/upvote/{{l.id}}/">Up Vote</a> 
    

Теперь, когда я нажимаю на эту ссылку из Firefox, это работает. Файл urls.py проекта содержит url(r'^news/', include('news.urls')),, поэтому эта ссылка работает. Я получаю вывод двух операторов print из функции views.py, и значение этого поля увеличивается в моей базе данных, как и ожидалось. Однако из Chromium я вижу очень странное поведение. Ссылка работает несколько раз. Иногда это срабатывает после большой паузы. Затем он просто перестает работать. Но из Firefox он работает каждый раз. Я перезапустил сервер много раз после очистки __pycache__ каталогов (не знаю, относится ли это или нет).

Когда я нажимаю с Firefox, я вижу следующие на выходе BUILTIN сервер разработки в Джанго каждый раз:

[08/May/2016 01:46:58] "GET /news/upvote/2/ HTTP/1.1" 302 0 
[08/May/2016 01:46:58] "GET /news/ HTTP/1.1" 200 2778 
1 
7 

что 1 и 7 являются выход печати() отчетности. Но когда я нажимаю из хрома, я вижу только это:

[08/May/2016 01:47:27] "GET /news/ HTTP/1.1" 200 2778 

Функция просмотра не выполняется, как вы можете видеть. Как перейти к устранению неполадок?

ответ

1

Вы пытались очистить кеш в Chrome?

How to Clear the Cache in Google Chrome

+0

Нет. Разве это не проблема на стороне сервера? Я не думаю, что кэш браузера имеет к этому какое-то отношение. Но я очищу кэш Хром, на всякий случай. И даст вам знать. – xparadigm

+0

У меня было подобное поведение в Chrome, работающем с сервером Jekyll. Дайте мне знать, если это имеет значение. Также попробуйте режим инкогнито, если у вас есть плагины, которые мешают. –