为每个用户设置的私人类别

大家好 :wave:

:dart: 我在寻找什么

我希望我的社区中的每个用户都有自己的私人空间,可以在其中以私密的方式撰写他们想要的任何主题。可以将其用作个人日记、以后可能想分享的想法,或者随心所欲地使用。除非主题的所有者决定通过邀请他人加入特定主题来邀请其他人,否则任何人都无法看到主题列表或通过直接 URL 访问内容。

:bulb: 我想到的解决方案

每个用户一个组和一个类别,遵循以下过程:

:spiral_notepad: 过程

当用户创建时会发生以下序列。

  1. 创建一个名为 user 的用户
  2. 自动创建一个名为 user-group 的组,配置如下。
    • 所有者user
    • 成员user
    • 访问权限:所有 3 个复选框均禁用
    • 可见性:仅所有者
    • 提及和消息:无人
  3. 自动创建一个名为 user category 的类别,配置如下:
    • 安全性:仅允许 user-group 组查看、创建和回复。
    • 设置/搜索优先级:忽略

:chart_with_upwards_trend: 应用上述过程后的结果

我在一个测试环境中手动测试了这种方法,有 2 个用户:userAuserB
结果是,在类别列表下,两个用户都看到了“全局”类别,但 userA 还看到了类别 userA spaceuserB 还看到了 userB space,但 userA 看不到 userB spaceuserB 看不到 userA space
userAuserA space 中创建了一个主题。然后,我在 userB 会话中复制了主题 URL,系统没有显示任何内容,表明我试图查看的主题不存在或已设为私有。

:green_circle: 优点

  • 这正是我想要的,并且对于非管理员用户来说是完全符合预期的行为。

:red_circle: 缺点和担忧

  • 手动过程
    上述过程是手动的,因此我应该找到一种自动化方法,否则这将是不切实际的。

  • 用户数量与组数量相同:会影响性能吗?
    这可能取决于用户数量,但我不想达到一个点,使这个决定成为社区在论坛性能方面的限制。

  • 管理员可以看到所有私人类别
    在类别页面下,管理员用户可以看到所有*“私人”*类别,就像其他人一样,并且还可以看到主题。这是一个令人担忧的问题,因为我想保证用户的隐私。那么,有什么方法可以限制这一点吗?我理解这是一个社区,您可能不期望社区内的隐私,所以也许我只需要接受这个限制,而不是以管理员身份登录社区,我可以像其他用户一样登录,并且只在需要时使用管理员帐户。

:thinking: 变通方法和替代方案

是否存在其他方法可以实现我想要的功能?对于描述的功能是否存在变通方法?我是否过于担心为论坛软件不应处理的用例找到解决方案?我愿意听取其他观点。
你觉得呢?
谢谢。

3 个赞

为什么不让他们自己发个私信呢?

6 个赞

一个引人入胜的潜在方法!

1 个赞

因为缺少标签?因为收件箱可能非常拥挤?

而且,我认为大量的分类并不是一个非常实用的解决方案。

3 个赞

我支持 @pfaffman 的建议,但记录在案的是,拥有大量群组不像拥有大量分类那样会影响性能。

我猜“允许群组使用 pm 标签”可以解决这个问题,但收件箱…… :laughing:

4 个赞

为此存在 pm tags allowed for groups 站点设置。

我们对此绝对同意!

2 个赞

如果您的自托管此插件应该可以解决问题。

此插件的发布者只能看到他们的话题和一个配置的组。在您的用例中,如果需要,创建一个组,将一个空用户添加到该组,例如 Discobot,或者创建一个空用户。手动激活用户,禁用电子邮件并将用户设置为私有。将组设置为私有。

您可以在此处禁用管理员查看

使用此方法,您只需要创建一个类别。此方法非常简单,无需人工干预。

3 个赞

插件和组件有时会出问题——如果其中一个失败,那么所有东西都会暴露出来。这也许不是很大的风险,但每个人都必须明白这一点。

2 个赞

这是最简单的解决方案。我一直在尝试这个解决方案,我认为它足以满足我预期的用例。但是只有一个缺点:反向链接功能似乎不起作用。

鉴于这种情况:
主题 1 引用主题 2

情况 1:正常使用典型公共主题
用户正在阅读 主题 1 并看到指向 主题 2 的链接。因此,用户单击链接并转到阅读 主题 2。在 主题 2 的第一条消息末尾,有一个指向 主题 2 被引用的其他主题的链接列表,因此该列表中的一个链接是 主题 1

情况 2:私信
用户创建 主题 2 作为发给自己的私信。之后,它也创建 主题 1 作为发给自己的私信,并引用 主题 2。首先,插入链接的链接工具不考虑私信。这是可以理解的。但是一旦插入链接,在 主题 2 中,主题 2 被引用的主题列表就不会出现。

这个问题一点也不关键,虽然我希望它能起作用。配置中是否有允许它的设置?

我尽量避免使用插件、主题以及任何非标准的东西,因为总有一天兼容性会中断。我是一名软件工程师,这个问题比应有的更常见。所以我宁愿尽可能简单,所以我想 @Jagster 和我处于同一种情况:


摘要

发给自己私信是最简单的解决方案,但有一个主要缺点:缺乏反向链接功能。以及两个小问题:

  • 链接工具不显示其他私信主题
  • 私信显示在“已发送”目录中,而不是收件箱中。

有办法解决这个问题吗?否则,这也不是什么大问题。
谢谢大家。

2 个赞

非常正确。尽管我观察到这个插件的开发者通常非常精通他的插件,并且我观察到他的许多作品都被集成到了核心中。但你说得非常对,即使是 Discourse Meta 的组件和插件有时也会出现问题。

我认为私信系统可以进行一些改进。

考虑到私信中的不同主题的想法,最好将它们分组在一个私信中,当它们相关时,并使用该私信内的链接在不同的参考点之间跳转。

虽然你出于充分的理由大多想避免使用插件。有一个可能还可以的插件,它是一个相当新的插件,允许成员将私信发布为一个主题。虽然它可能会出问题,但不太可能导致任何泄露。

我还希望看到一个书签管理器,以便更容易找到书签。例如书签文件夹。

3 个赞

你好 :blob_wave: 欢迎来到 Discourse Meta :slight_smile:

我只想重申其他人所说的。你可以通过私信(PM)和标签(tags)来实现你所描述的功能。我有一个个人工作收件箱设置,可以做到这一点。我有多个自私信,它们就像其他私信的封面页。我使用标签来管理,就像子文件夹一样,但更好,因为有些帖子可以属于多个标签。我在侧边栏自定义菜单中的收件箱自私信工具中链接了我需要的内容。

如果你的论坛用户少于 50 人,那么用户类别或子类别是可以管理的。如果用户超过 50 人,那么它很可能会变得难以管理。

6 个赞

我喜欢你使用一些 PM 作为其他 PM 入口点的方法。这个概念与 PKM(个人知识管理)系统(如 Obsidian)中的 MOC 类似。

但是,你能否进一步解释一下这部分?

你的侧边栏菜单中是否有一个自定义部分,其中包含指向充当其他内容入口点的 PM 的链接?

1 个赞

是的,我只需要侧边栏部分中的一个链接即可进入我的私人收件箱笔记本。实际上,在收件箱中设置一个虚拟文件夹树(仅链接 PM)非常容易。但这听起来您正在寻找一个预定义的自定义模板,供用户拥有自己的此类设置。这基本上是将 Discourse 变成它本身不具备的功能(就像为每个用户指定一个类别一样)。

设置私人收件箱虚拟文件夹系统是用户必须自己完成的事情——我不知道管理员如何能为成员预先配置这样的东西。我想可以提供说明文档,但每个人都有自己的组织方式,所以在此情况下,一个人的解决方案可能不适用于其他人。我不知道您论坛的实际用途或此用例是什么,因此无法评论。

不不。实际上,我正在寻找限制,以便能够为我的社区创建一个用户指南,向他们解释如何在不知道其他工具的情况下使用他们的收件箱来记录私人笔记。我同意将私人消息用作 PKMS(个人知识管理系统)不是 Discourse 的用途。

我并不想为用户的收件箱创建任何类型的文件夹系统模板。只是让他们知道如何使用私人消息来保存一些私人笔记,如果他们不想深入研究更复杂的工具。

在这一点上,我非常清楚限制以及我将要采取的方法:

我将写一份详细的指南,向用户展示如何使用他们的私人消息作为个人笔记,并附有示例。

感谢大家的评论和建议。

2 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.