我正在使用django頁面緩存修飾緩存只有我的主頁,因此,頁眉和頁腳也獲得緩存。所以,如果請求來自不同的URL,它只從緩存中選擇頁眉和頁腳。因爲我的頁眉和頁腳對於不同的網站是動態的。所以,有些鏈接是給404的。有沒有辦法通過清除頁眉和頁腳或者更好的方法來解決這個問題?Django頁面緩存緩存頁眉和頁腳
0
A
回答
2
您可能需要使用template fragment caching feature:
如果你更大的控制權後,你也可以使用
cache
模板標籤緩存模板片段。要讓您的模板可以訪問此代碼,請將{% load cache %}
放在模板頂部附近。
{% cache %}
模板標記將塊的內容緩存給定的時間量。它至少需要兩個參數:以秒爲單位的高速緩存超時以及給出高速緩存片段的名稱。該名稱將被視爲不使用變量。例如:{% load cache %} {% cache 500 sidebar %} .. sidebar .. {% endcache %}
1
我仍然還學習如何處理與動態頁面緩存。我會告訴我的解決方案,直到比我更好的人給你一個更有經驗的解決方案。
您需要在模板級別進行緩存(更準確地說,您需要緩存模板的片段)。
由於頁眉和頁腳是動態的,因此只能緩存頁面的正文片段。它可以像做:
{% include 'header.html' %}
{% cache 1000 'bodycache' %}
{% include 'body.html' %}
{% endcache %}
{% include 'footer.html' %}
這將使這個觀點每一個要求讓所有的header
和footer
所需的SQL查詢,但body
將被緩存。
2
除了片段緩存的響應之外,您還可以使用基於兩階段模板渲染的django階段。
相關問題
- 1. 緩存頁面
- 2. silverlight頁面緩存
- 3. 緩存asp.net頁面
- 4. 緩存HTML頁面
- 5. 非緩存頁面
- 6. Node.js頁面緩存
- 7. 刮緩存頁面
- 8. Codeigniter緩存頁面
- 9. 緩存HTML頁面
- 10. IE10緩存頁面
- 11. 保存頁面緩存
- 12. 正在ASP.net上緩存的自定義頁眉變量頁面
- 13. JCache「頁面」組緩存所有頁面?
- 14. Django的memcashed不緩存頁面
- 15. Django頁面緩存(麻煩db)?
- 16. 可以緩存django的頁面嗎?
- 17. Django的重載頁面沒有緩存
- 18. Django緩存 - 刪除某些頁面的緩存
- 19. Django緩存 - 沒有爲頁面的某些部分緩存
- 20. 緩存drupal系統頁面
- 21. 緩存asp.net頁面響應
- 22. ASP.NET頁面級緩存
- 23. 緩存ASP.NET頁面只
- 24. XHR的Rails頁面緩存
- 25. 軌頁面緩存,AJAX
- 26. ASP.NET頁面不斷緩存
- 27. Linux頁面緩存列表
- 28. CodeIgniter頁面緩存異常
- 29. 緩存99%的MVC3頁面
- 30. JSP頁面變量緩存