您可以检查一下偏好设置页面,看看该分类是否已被您的用户设为静音?
我本想提出异议,因为我发现这个问题的原因正是论坛用户(我是管理员)开始抱怨“分类”版块(分类)不见了。但你说得对,对我的账户而言它确实被静音了。问题是,我从未手动静音过它。而且,其他用户肯定也被静音了,否则他们不会抱怨。
这究竟是怎么发生的?
谢谢!
您之前是否将该分类设置为从“最新”页面中隐藏?如果是,那么在移除该设置后发生的迁移操作可能已将该分类对所有用户静音。如果是这种情况,可以通过 Rails 控制台进行修复。
日志里什么都没有,确实没有。在重新找到分类(见上一条消息)后,我尝试发布了一则广告。发布成功了,但没有显示按钮。
我仍然可以在分类设置中看到提到的那些按钮(并且它们都已勾选),但它们没有在我的列表页面中显示出来。
有什么办法可以解决这个问题吗?
谢谢!
不,至少据我所知没有。不过用户们在抱怨,看来似乎是所有人都被禁言了。我该如何通过 Rails 控制台修复这个问题?
谢谢!
首先,请备份您的网站,以防出现问题。然后执行以下操作:
# 获取分类并赋值给变量
c = Category.find_by(name: "<您的分类名称>")
# 为所有用户取消该分类的静音
CategoryUser.where(category_id: c.id, notification_level: 0).destroy_all
编辑:
如果您想查看该分类在运行第二条命令前对多少用户处于静音状态,可以先运行:
CategoryUser.where(category_id: c.id, notification_level: 0).count
这将返回已将该分类静音的用户数量。
当主题作者打开主题时,按钮是可见的……而不是在主题列表中。或者你指的是什么列表?
没关系!在我取消对分类的静音后,按钮现在显示出来了。或者也许是重启清除了这个问题。不管怎样,现在一切又正常了。抱歉打扰您,感谢您的帮助!
Gunnar
我一有机会就试试。谢谢!
你应该感谢 @simon。他做了大量的工作 ![]()
Simon,
=> 43653
哎呀。![]()
我得承认,上面命令中的 .destroy_all 部分看起来有点吓人。它的作用仅仅是移除静音标志吗?
再次感谢!
任何在控制台执行的破坏性操作都难免让人有些紧张。运行之前,请务必先做好备份。
CategoryUser 记录描述了用户对某个类别的通知级别。notification_level 为 0 表示该类别对该用户处于静音状态。你可以在此了解更多相关信息:https://meta.discourse.org/t/how-do-i-set-category-tracking-level-defaults-historically/53165。
删除所有 category_id 为指定值且 notification_level 为 0 的 CategoryUser 记录,将会从你网站上所有用户的静音列表中移除该类别。
当我运行此类命令时,通常还会额外增加一个步骤(上文未列出)。我不会直接运行:
CategoryUser.where(category_id: c.id, notification_level: 0).destroy_all
而是先将记录赋值给一个变量,以便确认处理的是正确的数据。类似这样:
# 获取类别并赋值给变量
c = Category.find_by(name: "<你的类别名称>")
# 将 category_users 赋值给变量并检查数据。确保记录具有正确的 category_id 等。
muted_category_users = CategoryUser.where(category_id: c.id, notification_level: 0)
# 确认数据无误后,再运行
muted_category_users.destroy_all
你好 @Janno_Liivak,非常感谢你提供的插件!
请添加俄语翻译。我已将纯文本内容放在下方。
server.ru.yml
ru:
site_settings:
topic_trade_buttons_enabled: "启用销售控制按钮?"
topic_trading:
sold: 已售出
purchased: 已购买
exchanged: 已交换
cancelled: 已下架
client.ru.yml
ru:
js:
topic_trading:
enable_sold_button: 启用“已售出”按钮
enable_purchased_button: 启用“已购买”按钮
enable_exchanged_button: 启用“已交换”按钮
enable_cancelled_button: 启用“已下架”按钮
sold: 已售出
purchased: 已购买
exchanged: 已交换
cancelled: 已下架
error_while_marked_as_sold: 标记为“已售出”时发生错误
error_while_marked_as_purchased: 标记为“已购买”时发生错误
error_while_marked_as_exchanged: 标记为“已交换”时发生错误
error_while_marked_as_cancelled: 标记为“已下架”时发生错误
mark_as_sold_confirm: 您要将此公告标记为“已售出”吗?
mark_as_purchased_confirm: 您要将此公告标记为“已购买”吗?
mark_as_exchanged_confirm: 您要将此公告标记为“已交换”吗?
mark_as_cancelled_confirm: 您要将此公告标记为“已下架”吗?
你好,感谢 @Dmitry_Krasnoperov!我已添加了俄语翻译。
对于其他插件用户来说……如果您允许的语言中不包含俄语,则无需更新插件,因为除此之外没有任何更改。
太棒了!!!现在投入生产。
你好,Janno
我已经为你的插件制作了德语翻译。你方便将它们添加到你的插件中吗?
你只需要将其重命名为 .yml 文件,因为 Discourse 不允许直接上传。client.de.txt|附件 (1.1 KB) server.de.txt|附件 (218 字节)
你好,@Lagger_Gandalf!非常感谢。我已添加了您提供的德语翻译 ![]()
我的论坛无法使用(难过)
启用插件后请尝试重启 Discourse。如果仍然无法工作,请提供更多关于您问题的信息。您可以给我发一条俄语消息……我大致能看懂 ![]()
你好 )) 我已全部启用) 并重启了 Discourse =/ 但没有任何变化!