データベースにショップのリストを照会しています。このリストはすべてのページで再利用され、実際には変更されないため、memcache に保存したいと考えています。コードは私には非常に単純に見えますが、次のエラーが表示されます:
Traceback (most recent call last):
File "C:\Program Files (x86)\Google\google_appengine\lib\webapp2-2.5.2\webapp2.py", line 1546, in __call__
return response(environ, start_response)
TypeError: 'Query' object is not callable
私のコードは次のとおりです。
shops = memcache.get('shops')
if shops is not None:
return shops
else:
shops = Shop.all().filter('active = ', True).order('abbrev')
memcache.set('shops', shops)
return shops
どんな提案でも大歓迎です。
アップデート
この出力をどのように使用するかを説明すると役立つかもしれません。次に、アクティブなテンプレートで Django を使用してこのアクションの結果を呼び出し、{{ for shop in shop }} を使用します。memchache を設定した後、「shops」変数を再度宣言する必要があるのではないでしょうか??
UPDATE2
次に、変数は次のようにテンプレートに渡されます。
template_values = {
'shops': shops,
}
self.response.out.write(template.render('templates/home.html', template_values))