您好,我有几位处于暂存状态的用户未能注册为用户。这些用户已添加个人资料图片并发布内容。如果这有影响,这两位暂存用户最初都是通过电子邮件添加到某个组的,且他们的邮箱地址一致。
你能复现这个问题吗,@justin
这里的标题具有误导性。您的意思是您向某个话题_邀请_了一个电子邮件地址,而不是有人通过邮件提交来创建话题,而 99% 的测试用户都来自后者。
我会进行编辑以使其更清晰。@justin 有一个更好的测试场景。我希望从一开始就能表述清楚,以节省大家的时间。
感谢澄清标题!为造成的困惑表示歉意。
这个问题是否可以复现?
我在本地开发环境的最新版本上测试过,用户已按预期处于未归档且活跃状态。
@debryc 你运行的是哪个版本的 Discourse?
不过有一个奇怪的现象:即使用户在创建账户之前被邀请加入某个私信(PM),且该私信尚未阅读,系统也不会显示相关通知。
哈哈!我们当前运行的是 v2.4.0.beta1 +8。我尝试更新到最新版本,但正在等待我们的技术志愿者通过 SSH 登录到我们的 Web 服务器。给自己提个醒:每当出现错误时,先检查 Discourse 是否有更新。 更新完成后我会告诉你结果!
@justin 同时,有没有办法手动取消暂存某人?我会将此作为临时措施。
你可以通过 Rails 命令来实现:
cd /var/discourse
./launcher enter app
rails c
User.find_by_email("itsmedebryc@yahoo.com").update(staged: false)
谢谢,这个方法有效!
与此同时,我又进行了一次更新,@justin,我可能遇到了你提到的那个 bug。
这次我完全按照之前的步骤操作,但在注册账户后,我没有收到激活链接,而是收到了欢迎消息!
我请求 Discourse 重新发送激活链接,结果成功了。
我的用户账户仍然处于待激活状态。
您需要稍等一下,因为 Justin 本周正在参加会议。
好的,我今天尝试根据 @debryc 提供的步骤复现此问题。@dax 与我分享了一些想法,并可能按照本帖子中给出的步骤成功复现了该问题:Staged invited user did not become registered user - #5 by debryc
@dax 在我们的基础设施中的测试站点上,通过以下步骤成功复现了该问题,并额外增加了以下内容:
- 在创建账户并输入信息时:
- 使用相同的电子邮件地址
- 使用与发送暂存用户时创建的用户名和姓名不同的用户名和姓名
- 按正常流程创建账户
我在 Meta 站点上尝试了此操作,但未能复现该问题。
我将在我们托管的测试站点上尝试复现,以进一步隔离问题。
我尝试在我们托管的一个全新的测试站点上复现此问题,但未能复现。
@debryc 您是否安装了任何非官方插件?
@debryc 我们可以在某些站点设置被修改的网站上复现该问题,但在全新安装的环境中无法复现。您的站点是否有特定的设置被修改?使用了哪些插件?任何进一步的信息都将有助于我们缩小问题范围。
主题组件:博客文章样式、DiscoTOC、discourse-category-banners、Discourse Kanban、标签图标。
移动端 CSS
.login-button {
span {display: none}
&:after {content: “注册 / 登录”}
}
通用 CSS
// 横幅格式
#banner {
border: 6px solid rgba(140, 194, 82, 1);
// border-radius: 0;
box-shadow: none;
padding: 20px;
max-height: inherit;
// background: url(https://discourse.nycedu.org/uploads/default/original/1X/279dd1c1049bf67d3472d0927c7230aac3aa3d9a.png) no-repeat;
// background-size: cover;
background-color: rgba(255, 255, 255, 0);
background-blend-mode: color;
}// 响应式 Google 日历 iframe
.googleCalendar{
position: relative;
height: 0;
width: 100%;
padding-bottom: 50%;
}.googleCalendar iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
大量文本自定义
用户字段:添加了两个文本用户字段
表情符号:添加了一个自定义表情符号
插件:docker_manager
基础设置:
登录
用户

群组
发帖
邮件

文件
信任等级:无变更
安全
Onebox
垃圾邮件
速率限制:无变更
开发者:无变更
法律条款
备份:无变更
搜索

其他:无变更
用户偏好设置:
API:无变更
用户 API:无变更
标签


仪表板:无变更
插件
感谢提供信息 @debryc——我们会深入调查,尽力把情况弄清楚一些。
这个问题有点棘手!我们最终确认是 discourse_narrative_bot welcome_post_type 站点设置被配置为“向所有新用户发送包含快速入门指南的欢迎消息”。
感谢您提供的所有有用信息!我们会尽快修复这个问题。
因此,确切的复现步骤如下:
- 确保
discourse_narrative_bot_welcome_post_type设置为“向所有新用户发送包含快速入门指南的欢迎消息”。
然后:
- 使用一个未绑定现有账户的邮箱地址发送邀请消息
- 现在您可以在网站上看到该暂存用户,进入用户管理页面,该用户仅处于暂存状态但未激活,这符合预期
- 在隐私浏览窗口中打开论坛
- 点击“创建新账户”
- 使用第一步中的邮箱地址创建一个新账户
- 在隐私窗口中激活该账户并继续访问网站
- 作为站点管理员,刷新该暂存用户的用户页面,账户状态仍显示为暂存但已激活
这听起来正确吗 @tshenry?


































