我有一個簡單的根資源工廠:金字塔:多個資源工廠 - 如何
class Root:
__acl__ = [
(Allow, Authenticated, 'edit')
]
現在對於一些「特殊」的路線,我需要創建另一個資源工廠
config.add_route('special', '/special/test', factory=SpecialFactory)
class SpecialFactory:
__acl__ = [
(Allow, Authenticated, 'special_edit')
]
現在,我想讓Root
的父母SpecialFactory
- 我該怎麼做?
這是正確的方式...
class SpecialFactory:
def __init__(self, request):
self.request = request
self.__parent__ = Root(request)
self.__name__ = 'special'
__acl__ = [
(Allow, Authenticated, 'special_edit')
]
我也想不明白的__name__
充分的宗旨,它應設置爲。
此外,金字塔何時會遍歷__parent__
鏈,何時不會?對於這樣的觀點的配置:
@view_config(route_name='special', permission='special_edit')
def something(req):
pass
將金字塔 '收集' 這兩種權限(special_edit
和edit
),或只是一個(special_edit
)?
請詳細解釋計算權限的「流程」。