我们正在使用PloneFormGen的SaveDataAdapter,并希望非网站管理员的用户能够下载CSV。正常的权限似乎不允许这样做。这在PloneFormGen中是否可行?
答案 0 :(得分:1)
你是对的,有download
的自定义权限 - 名为“PloneFormGen:下载保存的输入”的视图,Products/PloneFormGen/config.py
定义管理员,所有者和网站管理员获得此权限默认情况下。
在你的一个附加组件的profile-folder中添加一个名为rolemap.xml
的文件以额外分配角色(默认角色将保持不变,因为它们是通过Python脚本分配的,而不是GenericSetup文件):
<?xml version="1.0"?>
<rolemap>
<permissions>
<permission name="PloneFormGen: Download Saved Input" acquire="True">
<role name="Member" />
</permission>
</permissions>
</rolemap>
注意:这将全局设置权限,这意味着您无法将其限制为位置。为了更好地控制每个位置,创建角色“下载程序”,在rolemap.xml
中为其分配下载权限,并通过项目的共享选项卡在本地分配权限。对于最后一步,可以尝试https://pypi.org/project/collective.sharingroles/。
替代解决方案,以确保一个用户只需获得额外的权限即可下载保存适配器的内容:
将/ownership_form
附加到保存适配器的网址,选择新所有者并保存。