两个或多个用户处理相同内容的场景

Scenario of two or multiple users working on same content

我正在开发 SN 社区版;我需要设置一个类似的共享文件夹,供两个或多个用户使用。

我尝试了以下方法:

问题是我在用户(admin、mike)的控制面板中看不到这个共享文件夹。

内置的 mypage 文档库默认列出 /Root/Profiles/username/Document_Library 的子项。

实现此目的的最简单方法是将新的列表 portlet 添加到 'My page' 并将其绑定到 'shared' 文件夹。但是这样你就不能在一个列表中列出多个共享文件夹。

实现步骤:

  1. 将 /Root/Profiles/(apps)/UserProfile/Browse 复制到选定的用户配置文件 (/Root/Profiles/username/(apps)/UserProfile/Browse。这样用户应该在共享文件夹上工作将有一个自定义 'My page',其中共享文件夹作为列表
  2. 导航到新创建的浏览页面并切换到编辑模式
  3. 向其中一个区域添加 'List' portlet
  4. 打开 portlet 操作(portlet 的右上角)并单击 'Edit' 打开 portlet 属性 对话框。
  5. 这个对话框有很多东西要设置,但是你必须设置的三个是 'Content List' 选项卡上的 ViewFrame(设置为:/Root/System/SystemPlugins/ListView/ViewFrame.ascx)和Contenxt 绑定选项卡上的绑定目标 + 自定义根路径(绑定目标应该是自定义根并将您的共享文件夹路径添加到自定义根路径中)

上述步骤应该在所有相关的用户配置文件上进行。另一个解决方案可能是更改内置配置文件浏览页面 (/Root/Profiles/(apps)/UserProfile/Browse)。这样,共享文件夹将显示在每个用户 'My page' 上,但不允许查看共享文件夹项目的用户将看到一个空列表。

要获得所有 'shared' document/folder/content 项目,您必须使用 permission queries,但它们只能通过 OData 或 c# API 获得,因此您必须创建自定义 grid/collection 视图以实现此目的。