通过Plone中的权限提供静态html服务

时间:2014-03-27 00:39:25

标签: plone zcml

我想在我的ZCML文件中使用类似ZCML代码段的内容来从目录中提供静态HTML文件。这些文件必须通过诸如" cmf.ManagePortal"," zope.ManageContent"等权限来保护。或类似的。

<browser:resourceDirectory
directory="resource"
name="myresource"
permission="zope.ManageContent" />

目前普通的html文件被解析为好像它们是zope页面模板,这不是我想要的。根据{{​​3}} .html,.pt和.zpt扩展名被解析为页面模板。

我只想按原样提供html。

我知道plone.resource提供的<plone:static ...>但它不支持设置权限,这是我想要的用例。

我正在寻找以下其中一项的指导:

a)解析.html扩展名被解析为页面的方法     资源目录中的模板。

b)一种将权限应用于使用声明的静态目录的方法     <plone:static ...>

以下适用于我的ZCML,但不支持设置权限:

<include package="plone.resource" />
    <plone:static
      type="theme"
      name="build"
      directory="_build/html"
  />

1 个答案:

答案 0 :(得分:0)

我只能想象一个猴子补丁来从std lib的mimetypes.types_map字典中弹出一个条目。也许你想要弹出键'.htm',然后重新配置你的Sphinx扩展输出,这样你就可以保持'.html'不变。

您可以直接在软件包的 init .py上进行编码,或者使用collective.monkeypatcher在ZCA中注册。