ToddZ
1
我不知道除了 @haydenjames 之外是否还有其他人对这个感兴趣,但我对一个已解决的关于群组私信收件箱话题中的次要请求感到好奇:
……指的是:
这是我能弄清楚的……
由于用户和群组“名称”的等效字段标题容易混淆,我将它们在此处归类为**@ 句柄和正式名称**。句柄不允许空格;正式名称允许。
|
@ 句柄 |
正式名称 |
| 用户 |
用户名 字段 (Agent_007) |
名称 字段 (James Bond) |
| 管理员创建的群组 |
名称 字段 (poke_pros) |
全名 字段 (Pokemon Pros) |
| 自动群组 |
硬编码 (trust_level_2) |
不完全是…… |
自动群组,例如版主、信任等级等,没有可编辑的“句柄”和“正式名称”字段。
但是自动群组有可以编辑的站点文本名称:
这会更改群组页面上群组标题的外观。
也许这是您想做的……
……但这不会影响收件箱,收件箱会显示所有群组的句柄,无论是自动的还是其他的:
我不知道将正式名称字段拉进来在这里显示而不是句柄需要多少工作量,但如果工作量很小,那将是一个很好的润色。
编辑:意识到虽然在收件箱中使用正式名称可能看起来不错,但显示用于 @ 提及的句柄是有道理的。
如果您想重命名一个自动群组并为其指定一个匹配的新句柄,站点文本中的新群组标题必须为此目的有效,即不能包含空格。
ToddZ
3
这真是有趣……JammyDodger 的回复引导我进行了更多的实验。
通过站点文本设置重命名自动组导致了一些混淆,因为当涉及空格时,空格会阻止它们被用作句柄(handle)。如果当前的派生句柄因空格而未被站点文本设置覆盖,它将保持原样。我短暂地遇到了一个无空格的组标题作为句柄时发现了这一点。
了解空格的影响以及使用 Sidekiq 作业 EnsureDbConsistency 澄清了问题。
我将修改我在原始帖子中关于在收件箱中显示正式名称的建议,因为那与需要句柄的 @提及 不一致。
详细测试步骤
-
从我上面的情况开始,我确认了 Sideqik 作业已经运行,并且再次运行了它。确实,它没有拾取收件箱中的名称更改——正如您解释的那样,这是因为空格。
-
将 TL2 的站点文本从“Trust Level 2”更改为“Sophomores”并运行了 Sideqik 作业:
名称更改现在已传播,因为组标题和收件箱句柄——因为没有空格:
- 将站点文本名称改回“Trust Level 2”并运行了 Sidekiq 作业。在上一步操作中分配的句柄现在卡在那里——显然是因为该站点文本标题中的空格不能构成有效的句柄:
- 将站点文本恢复为默认的“trust_level_2”并且没有运行 Sidekiq 作业。这更新了标题但没有更新句柄:
- 运行了 Sidekiq 作业,这清除了编辑过的句柄,将其重置为收件箱中的默认值:
1 个赞