私はドキュメンテーションに従っていますGroup-Level Security
はこれらを書きます:
def groupfinder(userid, request):
print '#'*80
print userid
role = DBSession.query(Role)....
if role.name == "Admin":
return ['g:admin']
class RootFactory(object):
__acl__ = [
(Allow, Everyone, 'view'),
(Allow, Authenticated, 'edit'),
(Allow, 'g:admin', 'admin')
]
def __init__(self, request):
pass
authn_policy = AuthTktAuthenticationPolicy(
settings['auth.secret'],
callback=groupfinder,
)
それは機能しましたが、ロードされたすべてのページがDBに繰り返しクエリを実行し、
ユーザーがログインしたときに最初に許可を返すだけですか?
それとも私のやり方が間違っているのでしょうか...
また、mako のようなテンプレートで許可「g:admin」を知るにはどうすればよいですか?