我正在使用Plone 4.1,我只是想知道Products.CMFPlone.interfaces.IPloneSiteRoot和Products.CMFCore.interfaces.ISiteRoot之间的区别.如果我想注册一个zope-3风格的视图,我应该注册哪一个?
每当我想使用站点根目录时,我通常最终会使用plone.app.layout.navigation.interfaces.INavigationRoot中的INavigationRoot.
INAVigationRoot由Plone站点对象提供,但它也将由任何子站点的导航根或多语言站点中的顶级文件夹提供.特别是在多语言网站中,用户永远不会导航或查看实际的网站根目录,因此他们无法使用附加到其上的任何功能.
ISiteRoot仅适用于导出导入处理程序或其他内部逻辑,但不适用于任何最终用户可见功能.
IPloneSiteRoot是一种特定类型的ISiteRoot.IPloneSiteRoot由Plone站点的根提供,而ISiteRoot由任何CMF门户提供.如果您的产品仅用于Plone,那么您使用哪个界面并不重要.如果您希望它可以与其他基于CMF的应用程序一起使用,那么请使用ISiteRoot.
坦率地说,我通常选择ISiteRoot,因为它的输入时间更短.:)
| 归档时间: |
|
| 查看次数: |
655 次 |
| 最近记录: |