0
我有一個頁面加載搜索欄的標籤列表。每次點擊它都必須重新加載這個標籤列表。我怎樣才能使它成爲一個全局變量,當你訪問該網站時被初始化,並且不會每點擊一次就重新加載?django每次點擊頁面時都會重新加載變量
編輯:更好的是,我該如何讓列表初始化並且每天或每週更新一次?
我有一個頁面加載搜索欄的標籤列表。每次點擊它都必須重新加載這個標籤列表。我怎樣才能使它成爲一個全局變量,當你訪問該網站時被初始化,並且不會每點擊一次就重新加載?django每次點擊頁面時都會重新加載變量
編輯:更好的是,我該如何讓列表初始化並且每天或每週更新一次?
我會使用低級緩存api來做到這一點https://docs.djangoproject.com/en/1.8/topics/cache/。一旦高速緩存的設置應該是爲執行以下操作一樣簡單:
from django.core.cache import cache
def view():
search_tags = cache.get('search_tags')
if not search_tags: # cache expired
search_tags = get_searchtags() # substitute for your code
cache.set('search_tags', search_tags, 60 * 60 * 24 * 7) # cache search tags for 7 days
return view
這將意味着,每7天一次的搜索標籤列表是建立和隨後的訪問是非常快。
您還可以將標籤的建築物卸載到另一個作業中,以便在時間不是用戶的情況下構建它們會對用戶體驗產生負面影響(即使它每週一次) –
您可以使用會話https://docs.djangoproject.com/en/1.8/topics/http/sessions/ – user996142