为每个用户提供默认组标签(示例用户)

大家好,

我正在深入研究 Discourse(刚在 Vultr 上运行了一个 :slight_smile:)。在我关于群组标签(允许标记群组)Group tagging notification 的一个问题之后。

现在我想知道是否可以默认给所有用户一个群组标签(无需手动操作 ;))。这样每个用户都可以标记所有用户。

例如,这允许管理员强制用户接收特定帖子的通知(当然这只对内部使用有用 :slight_smile:)。

用户标记?标签不是这样工作的,或者说不是这样使用的。那样的话,你会有大量的标签。你的意思是提及吗?

而且,如果你想通过标签或提及来唤醒所有用户,这是不可能的。

您是想提及 @trust_level_0 吗?

2 个赞

据我所知,这并不能通知到所有人。不过,我可以将其与 @here 结合使用。有一个 max users notified per group mention(每个群组提及的最大通知用户数)的设置,但我不知道它是否可以设置为无限大或非常大的数值。

我想能够提及 @all,例如。这样就可以触达平台上的所有用户。当将 @trust_level_0(群组)重命名为 @all 并在消息中标记他们时,所有用户都会收到通知吗?

当某人获得更高的信任级别时,该用户是否也会从 @trust_level_0 群组中移除?

不。每个人都在那里。

如果选择 TL1 会更好,这意味着比 TL0 更好的每个人,那又是另一回事了。

您可以将其增加到 2000000000

1 个赞

唯一的问题是您无法重命名 trust_level_group_0 https://meta.discourse.org/t/is-it-possible-to-rename-the-trust-level-0-group-to-something-else/96639。

但是,您可以在 Discourse 中设置一个钩子,该钩子会 ping 一个端点,该端点又会告诉 Discourse API 在用户注册时将用户添加到某个组。

虽然不美观但可以奏效 :okay:

不。创建一个群组并添加人员。然后他们可以提及 @group

请勿重命名默认群组。这会造成混淆(如果允许的话)。

1 个赞

您可以通过 admin/customize/site_texts 重命名默认组 :+1: 要更改信任级别 0,它将是 groups.default_names.trust_level_0

它不能与现有用户或组共享名称,否则重命名将不会成功。更改作为后台作业的一部分进行,因此将在作业运行时更新。您可以通过从 /sidekiq/scheduler 触发 Jobs::EnsureDbConsistency 来加快速度。

我一直在想为什么更新花了这么长时间(我正在测试它)。但是,当您更改群组名称时,是否可以将其提及为 @新群组名称

如果您通过 admin/customize/site_texts 更改名称,它也应该会显示在菜单下拉列表和 @提及等处 :+1:

实际上,我不确定我是否测试过 @提及。让我去检查一下…

我检查过了,确实可以。 :+1:

1 个赞

你可以重命名它。但对于任何熟悉 discourse 并试图在以后提供帮助的人来说,这只会造成混淆。它很可能会弊大于利,但我并不了解那个社区,只了解我在这里帮助过的几百人。我可能是错的。

2 个赞

我之所以这么问,是因为如果您使用例如来自 Google 的身份验证层(oauth2),您就不能每次都手动将成员分配到某个组,所以您是:

  • 必须更改默认组名
  • 触发一个带有 (PHP) 脚本的网络钩子,该脚本创建一个回调,将用户添加到该组。

我不认为这有什么令人困惑的?只要他们提到重命名了并且这很重要,那似乎就相当直接了。据我所知,我知道的几个人已经这样做了,而且我不认为他们报告了任何问题?(除了群组/用户名冲突会导致重命名静默失败)。

你还有其他理由建议避免这样做吗?

1 个赞

信任级别在大量地方都有使用。如果 trust_level_0 被称为“not_trust_level”,并且您开始调试有关信任级别的问题,您可能会感到困惑。“等等。根本没有 trust_level_0。这到底是怎么运作的!?”您可能会这么说。

1 个赞

我一直在使用自定义名称来表示信任级别,除了前面提到的现有用户名与新组名之间的冲突(在此处解决:https://meta.discourse.org/t/trust-level-default-name/231050)之外,没有其他问题。管理员菜单中的自定义文本部分的目的不就是为了让您只需进行一次更改,就可以修改界面中该文本使用的无数个地方吗?

根据我的经验,更改信任级别的名称是为您的论坛提供更统一主题的简单方法,而且更有趣。

对于我的社区来说,Trainer > Ace > Leadertrust_level_1 > trust_level_2 > trust_level_3 更有意义、更符合品牌形象,也更有趣。

2 个赞

很高兴它对您有效!也许我太死板了。

我的观点是,有很多字符串可以自定义,它们都提到了信任等级。但如果您没有遇到麻烦,那就是真实数据,我也没有具体的例子(我记得的)表明它确实是个问题,所以很可能可以忽略我。

1 个赞

警告:TL0 包含分阶段用户。如果您使用分阶段用户并向该群组发送消息,分阶段用户将收到电子邮件。

这让一些人感到惊讶。:slight_smile:

2 个赞

您说的分阶段用户是什么意思?