我正在嘗試使用燒杯的緩存庫,但無法使其工作。無法獲取燒杯緩存工作
這是我的測試代碼。
class IndexHandler():
@cache.cache('search_func', expire=300)
def get_results(self, query):
results = get_results(query)
return results
def get(self, query):
results = self.get_results(query)
return render_index(results=results)
我已經試過例子燒杯的文檔中,但我看到的是
<type 'exceptions.TypeError'> at/
can't pickle generator objects
顯然我失去了一些東西,但我無法找到一個解決方案。
順便說一句,如果緩存類型設置爲「文件」,則會出現此問題。
我懷疑這是不可查看的結果,而不是查詢。 – 2010-07-10 16:45:14
@Marius,我相信'query'是一個生成器,因此不可pickleable(結果本身是否也是一個單獨的問題)。 – 2010-07-10 17:02:45
我懷疑結果是不可取的,我認爲它將緩存存儲在數據庫或文件中,因此它必須序列化鍵和值。從上下文(緩存命名空間被稱爲'search_func'),我會說'query'只是一個字符串 – 2011-01-02 17:15:16