3

<browser:page />Plone 上,我有一个permission属性。我可以在其中添加自定义权限,并在呈现浏览器视图时具有更好的安全性。

  <browser:page
      for="*"
      name="my_view"
      class=".myview.MyView"
      allowed_interface=".myview.IMyView"
      permission="my.permission"
      />

只需添加permission它起作用的属性:尝试执行@@my_view,它会要求登录。

现在,让我们来看看 portlet:portlet 有一个view_permission,我认为它会做同样的事情,或者至少不会在用户没有权限的情况下呈现 portlet ——但是这些情况都没有发生。portlet 被渲染,忽略view_permission,因此我仍然需要使用可用的 portlet 属性来完成我想要的(似乎我不是唯一一个这样做的人)。

那么,view_permission是为了什么?我找不到它的文档。看来我可以permission像浏览器视图一样使用它,但似乎我不能......

4

1 回答 1

4

view_permission 的目的将 portlet 限制为具有特定权限的用户......正如这里所说:

http://svn.plone.org/svn/plone/plone.app.portlets/trunk/plone/app/portlets/metadirectives.py

在这里你可以找到一个例子:

http://svn.plone.org/svn/plone/plone.portlet.collection/trunk/plone/portlet/collection/configure.zcml

编辑:不幸的是,我必须修改我的答案...... view_permission 的目的应该是 将portlet 限制为具有特定权限的用户。但它还没有兑现,你可以在这里看到:

(感谢 Ulrich Schwarz 的评论促使我仔细检查。)

于 2011-08-31T20:02:05.390 回答