ユーザーがフォームを送信できる「results.html」というページがあります。問題は、フォームを送信することがあり、レスポンスがキャッシュから取得され、views.pyで実際にレスポンスメソッドが呼び出されることがあることです。ここでは例です:設定に関係なくDjangoのキャッシュリクエスト
ユーザーは「模倣ゲーム」提出:正しい応答がユーザに返され、ビューの私の応答関数は、コンソールに
[19/Nov/2016 00:50:21] "POST /results/ HTTP/1.1" 200 2414
Response function called!!
Search term: The Imitation Game`
を印刷します。
[19/Nov/2016 00:51:05] "GET /get_data?query=The%20Imitation%20Game HTTP/1.1" 200 18858
明らかに応答方法が全く呼ばれていなかった。しかし、ユーザー検索、再びこの(または任意の他の検索用語彼/彼女は過去に検索される)場合、これは応答です。これは、後の要求で古いデータがユーザーに返されるため、フロントエンドでも非常に明白です。
# Use dummy cache for development and testing
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.dummy.DummyCache',
},
'deployment': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
}
}
とDEBUG = True
:
ここでキッカーは、私はダミーキャッシュを使用していますということです。私はまた、次のように応答メソッドをマーキングしています。
私は自分のブラウザキャッシュをクリアしました。私はこれがすべて可能であることに驚いています。どんな助けでも大歓迎です。
ブラウザでキャッシュを無効にできますか? - http://stackoverflow.com/a/7000899/3930114 これはブラウザ側の問題だと思います。また、ネットワークセクションで追加の確認としてdjangoサーバに送られたクエリを見ることができます。 – Aditya