包擁有者在這裏,首先我必須道歉,並說我可以更好地證明這一點(確定它通過doctests記錄,但它可以做得更好)!
您需要填寫的內容是您希望訪問該特定內容類型的視圖。例如,如果您希望顯示集合中所有項目的列表,則可以確定該視圖的名稱(在本例中爲atct_topic_view)。對於標準頁面,它將是document_view。也就是說,OAuth通常針對通常以更簡潔的格式(例如json)進行通信的Web服務,因此開發人員可以開發特定於某些現有(或自定義)Plone內容類型的新視圖,然後將這些視圖添加到映射可用。
最後,映射基本上是端點,再加上一個可選的子路徑,它可以是通配符。在編寫時,爲自定義子路徑指定通配符並不意味着可以使用根父視圖,因此,假設您有一個自定義下載視圖,可讓用戶列出鏈接到實際內容中的子路徑的格式,您可以執行一些操作像這樣:
Collection:
download_feed
download_feed/*
是否會讓現有的download_feed查看集合內容類型中,然後內的所有子路徑(一般通過自定義視圖實現zope.publisher.interfaces.IPublishTraverse
提供)。
或者,您可以編寫自己的ScopeManager。只需創建一個從pmr2.oauth.scope.BaseScopeManager(或BTreeScopeManager)繼承一個類中,實現所有的方法(和測試),然後你的代碼內或與這樣的ZCML註冊這個:
<adapter
for="zope.annotation.interfaces.IAnnotatable
your.app.interfaces.IAppLayer"
factory="your.app.ScopeManager"
provides="pmr2.oauth.interfaces.IScopeManager"
/>
應然後使用您自己的覆蓋默認(Portal)基於內容類型的範圍管理器。