是否有人知道一种安全的方法,可以将某个主题上所有用户的通知级别设置为单个值?我猜这会在 Rails 控制台中进行。
我想将某个主题上的所有用户设置为“静音”或“正常”,而不是“关注”或“跟踪”。
目标是在复杂的审核情况下,减少某个大型主题的活动。
是否有人知道一种安全的方法,可以将某个主题上所有用户的通知级别设置为单个值?我猜这会在 Rails 控制台中进行。
我想将某个主题上的所有用户设置为“静音”或“正常”,而不是“关注”或“跟踪”。
目标是在复杂的审核情况下,减少某个大型主题的活动。
管理员菜单
设置
用户偏好
等等,抱歉,你的意思是只有一个主题。是的,可以想象需要 Rails
这种情况很复杂,我不想有任何视觉提示来引发公开讨论,这可能会占用数小时的审核时间。(我已经应接不暇了。)理想的结果是人们根本不会被提醒这个话题的存在。
我会取消该主题的列表。然后它将从论坛中隐藏,因此大多数用户可能在那里看不到它。但是,当他们有指向该主题的链接时(例如,因为他们收到了通知),他们仍然可以打开该主题。
不过,请注意,如果他们正在观看,当视频设为“未公开”时,他们仍然会收到通知。
我认为您现在可以使用 /t/TOPIC_ID/notifications 端点来设置用户在特定帖子上的通知级别,如果这比 Rails 控制台更具吸引力的话?
siteurl/t/<topic_id>/notificationsPOSTusername 或 external_id。如果为空,将更改管理员自己帖子的通知级别。notification_level:与级别对应的整数值
muted: 0,regular: 1,normal: 1, # regular 的别名tracking: 2,watching: 3,但对于 Rails 控制台,我认为会是这样:(在尝试在 Rails 中更改内容之前,请务必先进行备份
)
TopicUser.where(topic_id: TOPIC_ID).update(notification_level: 1)
(1 是正常,0 是静音)
这将更改帖子级别的通知,但可能还有类别和标签级别的通知,这些通知仍会影响谁会收到新活动的通知。
还有一个数据浏览器查询,可以检查用户在某个帖子上的通知级别,如果这有用的话:
SELECT
topic_id,
user_id,
notification_level
FROM topic_users
WHERE topic_id = TOPIC_ID
感谢您的详细回复。我明天会尝试使用 API。
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.