TGP
(Brian)
1
你好。这是我的第一篇帖子。
我是个老论坛用户,已经试用我们新安装的 Discourse 一个月了。我彻底爱上了它。
长话短说: 我调整了一些 tl0 / tl1 设置以适应我们的新用户引导流程。一切看起来都很顺利,但新升级的 tl1 用户在尝试在相应版块发布自我介绍时,却收到“您无权查看请求的资源”的错误提示。
可能与此相关? 之前,我曾将 tl0 组重命名为“wallflowers”(潜水者),因为我们将该组在单个分类中限制为只读。后来我们决定将该组名称改回“新用户”,但我仍在新用户列表中看到“wallflowers”(点击后会跳转到“新用户”组的设置页面)。搜索自定义文本中的“wallflowers”也没有任何结果。是不是有什么缓存问题?
这是我们正在构建的新用户引导流程:
另外值得一提的是,为了让新/测试用户能看到这些分类,我不得不赋予“wallflowers”组对这些分类的阅读和回复权限,尽管“新用户”组本来就已经拥有访问权限。感觉我像是进了糖果店的孩子,可能在某个地方造成了冲突。
这里有一组截图,希望能有所帮助。
感谢您的时间和关注。我对 Discourse 情有独钟,迫不及待想邀请团队其他成员加入,为我们的测试用户搭建更多内容。我们一定会做出很棒的东西。
jomaxro
(Joshua Rosenfeld)
2
嘿,Brian,欢迎!
我正在仔细查看你分享的截图,发现了一个有趣的地方。在第 2 页,我看到你被列为 trust_level_0 的“所有者”。这不应该发生……信任等级组是自动生成的,因此不会有所有者。那张截图显示的是你所有的组,还是仅前 8 个?
目前,由于 wallflowers(TL0)组在大厅(Lobby)分类下拥有创建、回复和查看权限,所以网站上的所有用户在该分类下都拥有完整权限。我理解这并非你的本意,可能只是用于测试,但如果一个 TL1 用户无法在此发帖,那很可能说明其他方面存在问题。
另外请注意,信任等级是层级化的——所有 TL4 成员同时也是 TL3、TL2、TL1 和 TL0 的成员;TL3 成员也是 TL2、TL1 和 TL0 的成员,依此类推。因此,如果你在某个分类的安全设置中添加了 TL0(wallflowers),就不需要再额外添加 TL1、TL2、TL3 和 TL4,除非你希望它们拥有不同的权限。
管理员用户的情况也类似。管理员组是一个自动生成的组,包含所有版主和管理员。因此,如果你在某个分类的安全设置中添加了管理员组,就无需再单独添加管理员和版主。
能否请你确认以下几点:
- 组页面截图是否显示了所有组,而不仅仅是前 8 个。
- 你的 Discourse 版本。
- 你是否按照我们的官方安装指南进行了安装。
- 你的测试用户是尝试创建新主题,还是回复已有主题?
- 请从大厅的权限设置中移除管理员、成员、版主、onboarding、TL3 和 TL4,然后再次尝试发帖。
TGP
(Brian)
3
移除所有其他群组后问题已解决。我的测试用户现在可以成功发布新主题了。太棒了!
不过,“所有者”在
HAWK
(Hawk)
4
你能举个例子说明有哪些内容没有更新吗?TL 和分类其实没有直接关联,所以我想知道这里是否存在误解。
TGP
(Brian)
5
嘿 @HAWK,谢谢你的提问。
我可能用词不当。如果你看一下最后两张截图,那就是我想问的内容。
编辑分类,点击安全标签页。那些是用户组,对吧?即使只是自动的、基于信任等级(TL)的组?
我在自定义文本或设置中找不到“墙花”(wallflowers)或“入职引导”(onboarding) anywhere。我已经还原了所有关于信任等级名称、标签和/或用户头衔的更改。
所以,如果我的 TL1 是“trust-level-1”,为什么它没有出现在那个分类设置列表中?
是不是因为如果有一个用户拥有该标签,我就无法移除它?我在我的测试用户概览中只看到过“墙花”(wallflower)这个词。
HAWK
(Hawk)
6
完全怪我,我漏掉了最后一张截图。那确实是“安全”类别模态框中的组列表!
如果您已重命名该组,下拉菜单中应该会反映这一更改。您是否执行了硬刷新?(我这是在病急乱投医了。)
TGP
(Brian)
7
在浏览器中?是的。
有没有可能是 2016 年的这个旧 bug 在作祟?我看到的现象似乎就是这样。
例如,查看这个新用户,我发现他属于自动分组“wallflowers”。
当我点击该链接时,它带我到了这里(注意 URL):
但此时只有这些分组(注意:URL):
也许我只是真的把数据库惹毛了,或者类似的情况。
HAWK
(Hawk)
8
TGP
(Brian)
9
这确实听起来像是可能正在发生的情况。一夜之间,事情“神奇地”对齐了。
带 URL 的组:
组“trust_level_0”昨晚一直使用的是“wallflowers”,现在有了正确的 URL:
之前自动分配为“wallflowers”的用户,现在在个人资料管理中显示为“trust_level_0”:
分类安全设置的下拉菜单中不再显示“wallflowers”或“onboarding”组:
看来数据库中确实有某种机制会延迟某些更改?
感谢大家的帮助。这太棒了。
JimPas
10
这看起来非常像用户目录更新延迟的情况。新用户不会立即显示,直到某个预定的每日例行程序运行……然后,他们终于出现了!
TGP
(Brian)
11
这是否意味着从一个信任等级(tl)自动提升到另一个信任等级不会立即生效?(我觉得应该是立即生效的。)
这里的问题已经有所演变。我的新用户现在确实只能看到计划中的那个分类,但根据我配置的规则,他们似乎仍未获得 tl1 的访问权限。
- 新用户注册,初始为 tl0
– 仅能访问一个分类:规则
– 必须进入 5 个主题
– 必须阅读 3 分钟
- 用户应被提升至 tl1
– 获得访问第二个分类的权限:大厅
– 必须进入 1 个主题
– 必须发布 1 个主题
– 必须阅读 5 分钟
我邀请了一位测试用户,该用户按设计获得了“规则”分类的访问权限,但即使该用户已满足所有条件,其信任等级仍停留在 tl0。第二个分类(大厅)已配置为允许 trust_level_1 组拥有创建/回复/查看权限,但新用户却看不到该分类。
如果存在夜间运行的 cron 任务或其他类似机制,我可以去排查,但我需要确认这是否是预期行为,以便相应调整我们的入职计划。
有人能确认一下吗?先谢过。
JimPas
12
@TGP
Brian,我在下方复制粘贴了来自我论坛的一篇帖子,其中几位新用户表示,他们在刚注册后不久并未出现在用户目录中。虽然他们未出现在“每周”列表中,但切换到“今天”时确实可见。当晚例行程序运行后,他们在目录的所有视图中都出现了。
[ 用户未显示在用户目录中 ]
[META]
由于论坛上线时间不足 24 小时,用户未出现在用户目录的任何搜索分类中,包括“周”、“月”、“季度”、“年”或“全部时间”。他们仅出现在“今天”记录中。
解决方案:等待 24 小时,让每日例行程序自动运行。之后用户应该会显示出来。
我查看了支持论坛,发现也有其他人遇到相同问题。解决方案同样是等待 24 小时,因为有一个每 24 小时运行一次的更新例行程序。
[注意:在原始帖子(解决方案)中我曾提到“24 小时”,但我们的例行程序似乎在当地时间晚上 11 点左右运行——不过我尚未确认具体时间。]
riking
(Kane York)
13
每个论坛的定时任务调度顺序都会不同,并且这种调度顺序会在一段时间内保持稳定!
TL0-1 每呃呃呃 15 分钟运行一次左右?而 1-2 和 2-3(以及 3-2)则是每天运行。
TGP
(Brian)
14
这与我目前的经验相符。感谢 Kane York。
有人知道是否有设置可以更改这种行为,或者这样做是否过于消耗资源?
提前致谢。