[TurboGears] turbogears.identity.currentオブジェクトは、テンプレート内ではtg.identity。
環境
この記事の内容は、TurboGears 1.0.1で確認しました。
identity
turbogears.identityは、モジュールです。このため、turbogears.identity.currentをコントローラ内で使おうと思ったら、
from turbogears import identity # identity.currentを使う。
と記述します。turbogears.identity.currentは、turbogears.identity.IdentityWrapperクラスのオブジェクトで、ドキュメントにもある通り、Userオブジェクトにアクセスするときは、
turbogears.identity.current.user
と記述します。
一方、テンプレート内では、ドキュメントにも書いてありますが、tg.identityはturbogears.identity.currentの別名です。なので、テンプレート内でUserオブジェクトにアクセスするときは、
tg.identity.user
と記述します("current"がない)。
所感
ちょっと紛らわしいです。