我有一个 Plone (4.0.1) 站点,需要根据文件夹更改布局。想象一个像这样的结构:
University > Faculty A > Institute A1 > Person A11
> Person A12
> Institute A2 > Person A21
...
现在,如果我将所有需要的资源(自定义 css 文件、图像等)放入 ZODB,人员 A11 的页面将自动获取位于 Faculty A 文件夹中的 fac-image.gif。
但是,为避免混淆,我不想将 fac-image.gif 暴露给用户。(这都是他们不应该触及的框架的一部分。)
如果我注册一个资源,我可以使用 ++resource++theme.images/path 访问东西,但是没有从父母那里获取,所以 ++resource++theme.images/facultyA/instituteA1/fac-image.gif找不到图片。更糟糕的是,我现在有一个单独的目录结构要维护。
我目前正在做的是通过文件系统目录视图手动滚动“尽力而为”遍历过程,该过程将尝试沿着路径向下移动,如果子目录不存在(即资源树不存在)就留在原处'没有人 A11 的子目录;我没有大喊 404,而是留在研究所 A1),然后尝试获取备份。portal_factory 和视图涉及一些技巧,我很确定我错过了更多。
所以:这肯定不是一个人应该这样做的方式,但什么是?