会员想“暂停”的最佳策略是什么?暂停可能不是正确选项

嘿,我运营着一个会员网站,论坛使用的是 Discourse(通过 SSO 集成)。在我的主网站上,会员拥有自己的账户、个人资料等。

目前,会员可以暂时停用他们的主个人资料,这没问题。发生这种情况时,我也会“停用”他们的 Discourse 个人资料,并显示这条消息:“该会员选择暂时停用其个人资料。”

问题:这是处理这种情况的最佳方式吗?是否有其他机制可以“暂停”Discourse 账户(因为背后的会员选择暂时不参与互动)?目前,停用消息在 Discourse 中会显示为一个大大的红色标记!但在这种情况下,这完全不应该出现。显然,停用功能是 Discourse 为惩罚目的而设计的,但这并不是负面情况。

很乐意听到任何想法、一般的思考、建议,或者看到一些可爱的小猫 GIF……

2 个赞

改为停用他们?这将阻止他们接收电子邮件。他们需要重新验证邮箱才能重新开始使用论坛。注意:如果在宽限期内他们没有任何发帖,系统也会删除他们的账户,但仅适用于发帖数为零的账户。

4 个赞

我对此持开放态度——需要研究一下“停用”具体是什么样子,我对此不太熟悉。感谢您的提示!

(真希望有一张简单的对比表,列出“忽略”、“静音”、“暂停”和“停用”。它们都是不同程度的“我想少看用户 x 的内容”,但其中存在一些细微差别……)

2 个赞

你好 @merefield,你说的“停用”是指将“Active”值改为 false 吗?我还不太清楚。我找到了 @sam 的这篇帖子,里面并没有包含“已停用”状态。:man_shrugging:t2:

我的意思正是如此,停用:

(这是管理员页面的用户信息片段,据推测仅管理员可访问)。

2 个赞

那么,我无法确定如何判断用户是否已激活。我可以通过 API 获取用户对象(包括 /users/ 和 /admin/users/ 两个版本)……所以我在停用用户之前和之后分别获取了该对象,并比较了两个 JSON 转储结果。但我没看到任何字段能表明用户的“激活”状态!我是不是漏掉了什么?!

使用 Rails 控制台。如果是通过代码操作,请确保保存更改。

嘿,谢谢你的回复……

……但我不太明白你的意思。:slight_smile:

目前,我是直接在用户个人资料页面(使用我的管理员账户,只需点击按钮)激活或停用用户,然后使用 Insomnia(一个类似 Postman 的 API 探索工具)拉取完整的 /admin/users/ 记录。因此,我看到的是 API 返回给我的原始 JSON 用户记录。

我不太清楚使用 Rails 控制台能帮我做什么——?或者如何“保存”任何更改?当我在用户管理屏幕上点击“停用此用户”按钮时,更改会立即生效。

请浏览一下这个网站:slight_smile

https://meta.discourse.org/search?q=rails%20console

我假设你当然拥有终端访问权限?…

啊,明白了。是的,我是……但我想我还是不太明白使用 Rails 控制台(用来随便玩玩这些?)能在这里帮我什么。我再找找看……

尝试:

rails c

myUser = User.find_by(username_lower:"---他们的用户名---")

discourse 目录下执行。

输入 exit 以退出……嗯……退出 :slight_smile:

不过,如果是生产环境,请小心操作。

你可以更安心地尝试:

rails c --sandbox
1 个赞