その特定の呼び出しは常に空を持っているため、私は期待する何variableという名前のテンプレートセットからのDjangoメソッド呼び出し。これはどのように可能ですか?</p> <pre><code>{{ stakeholder.get_avg_endorsement|floatformat:1 }} </code></pre> <p>方法は、このようなものになります:私はそうのようなテンプレートからメソッドを呼び出すビューで
def get_avg_endorsement(self, stakeholder_cache={}):
if stakeholder_cache.has_key(self.id):
print "gae cached:", stakeholder_cache[self.id], stakeholder_cache, locals()
return stakeholder_cache[self.id]
...
ですstakeholder_cache。しかし、時にはget_avg_endorsement誤った値を生成し、印刷トレースは次のようになります。あなたはget_avg_endorsement
への呼び出しのすべてが彼らのstakeholder_cache
で何かを持って見ることができるように
[Thu May 05 17:31:46 2016] [error] ot----- <- start of the view
[Thu May 05 17:31:47 2016] [error] gae cached: 1.33333333333 {5661L: 1.3333333333333333}
[Thu May 05 17:31:47 2016] [error] gae cached: 1.33333333333 {5661L: 1.3333333333333333}
[Thu May 05 17:31:47 2016] [error] gae cached: 1.33333333333 {5661L: 1.3333333333333333}
。私がテンプレートから少なくとも一度呼び出すと、どうすれば可能ですか? traceback
を使用し、テンプレートレンダラーから少なくとも1つの呼び出しを表示します。
私は古いバージョンのDjango(1.4.3)を使用しています。これはDjangoのバグでしょうか? get_avg_endorsement
は、stakeholder_cache
を使用する他の場所からも呼び出されます。
私はこれに数時間を費やしましたが、これがどうやって起こるか、どのように進行するのかを覚えていません。どんな助けでも大歓迎です。
はありがとうございました!レースの状態を完全に説明して、アドバイスが問題を修正したようです。 – Rolf