шаблон django оценивает по-разному в Firefox и Safari - PullRequest
1 голос
/ 21 ноября 2010

Получил самую странную проблему, и это не имеет смысла.Я уже много раз разбирался в коде и в конце концов сообразил, в чем суть проблемы.В основном, тестируя сайт с помощью Firefox и Safari, они ведут себя по-разному.Это может иметь смысл для Javascript или CSS.

Однако это код django, который не оценивается по-другому.Простой пример:

Код моего шаблона:

{% if myvar == 'var1' %}   
{{ status }}
{% endif %}

Тег включения - это простой тег включения, который возвращает несколько переменных и обновляет контекст.

В firefox, если myvar вычисляет и показывает переменную состояния.Однако точно такой же код в сафари не работает.Это работает, только если вы обновляете страницу (и нет, это не кэширование, поскольку у меня включено фиктивное кэширование)

На самом деле это не имеет никакого смысла вообще!У меня есть это на тестовом сервере, но не могу опубликовать здесь.Если вы отправите мне сообщение, можете отправить URL.

Сделали некоторые копания, и версия, которая работает (Firefox), имеет следующие дополнительные заголовки HTTP, в то время как сафари нет (поэтому я предполагаю, что он не проверяетболее новая версия)

'HTTP_IF_MODIFIED_SINCE', HTTP_IF_NONE_MATCH, HTTP_KEEP_ALIVE

Ответы [ 2 ]

0 голосов
/ 21 ноября 2010

Возможно ли, что у вас есть контекстный процессор и / или промежуточное программное обеспечение, смешивающееся с вещами?И то, и другое может создать странные проблемы типа «человек за кулисами» - что-то вроде проблемы с сетью и незнания того, что в ваших пакетах работает брандмауэр.

0 голосов
/ 21 ноября 2010

Является ли myvar чем-то, что вы собрали по URL?Возможно, Firefox и Safari отправляют несколько разные строки?

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