如何将一个分类中的所有主题移动到新标签

你好 Discourse 团队,

我们是否有命令行可以将某个分类下的所有主题移动到新的标签?
我们是否有命令行可以将所有子分类下的主题移动到父分类?

  1. 导航至包含您希望更改的帖子的类别
  2. 切换批量选择工具(位于左上角的列标题处)
    image
  3. 点击“全选”按钮
    image
  4. 点击右上角出现的批量操作扳手图标
    image
  5. 点击弹出窗口中的按钮以进行相应更改(设置类别或追加/替换标签)

感谢 @wesochuck,我知道这个功能,但我的每个子分类都有超过 1000 个主题,加载和设置它们很困难。因此,我只想设置一个连接到服务器的 SSH 命令行。谢谢大家!

这里还有其他一些主题,包含了一些 Rails 命令的示例,用于选择一批帖子并对这些帖子执行某些操作。既然你还没有找到答案,不妨看看这些内容。

我最近太忙了,没有多余的时间亲自处理这个问题。如果你觉得这值得付费,我可以今天为你完成,收费 200 美元;或者下周一完成,收费减半。

编辑:这里是一个起点:

 Topic.where(category_id: CURRENT_ID).update_all(category_id: NEW_ID)

在执行此操作之前,请务必先进行备份!

谢谢!我已成功将子类别移回父类别。
我想为所有包含关键词的主题插入并更新标签。我懂一点控制台命令,但不起作用。您能帮我修复以下控制台命令吗:

Topic.where(“quận 1 dt”).update_all(tags=“quận-1”)

rake posts:update_tag[“quận 1 dt”,“quận-1”]

我想通过控制台执行此操作,因为我的 Discourse 论坛中有成千上万个主题需要替换。请问应该使用哪个控制台命令来实现此功能?谢谢!

非常抱歉!我不是开发人员,也不熟悉 Rails 控制台的专业用法,我会努力多加学习。非常感谢!

你好,
我运行了这条命令但没有生效,能帮我修复一下吗?

Topic.where(category_id: CURRENT_ID).update_all(tags: ‘quan-1’)

我运行了这个命令,但没有生效

UPDATE “topics” SET “tag” = ‘quan-1’ WHERE (“topics”.“deleted_at” IS NULL) AND “topics”.“category_id” = 2752

能否通过以下控制台为话题插入或更新标签?

UPDATE topics SET tag = ‘tag_content’ WHERE topics.category_id = Category_ID_wanna

你好 Discourse,
我们能否为所有包含特定字符串的主题分配标签?应该使用什么命令?
例如:

UPDATE topics SET tag = 'tag_content' WHERE topics.content = 'a string'

这样可以吗?:slight_smile:

可以,相关操作说明在此:Administrative Bulk Operations

这很棒,但它并没有移动该分类的线程(即包含该分类信息的那个默认线程),我觉得这很奇怪,更不用说我还找不到任何方法来移动该主题。

在 Discourse 中创建分类时,系统会自动为该分类生成一个“关于”主题。该主题无法被移动。不过,你可以手动将原分类“关于”主题的内容复制到新分类的“关于”主题中。

我明白你的意思,也大致理解了,但为什么情况会是这样并不明显。这些话题包含的内容,如果我将所有内容迁移到一个新类别中,按理说可以被移动。我原本在这些话题中有一些有用的内容,只是后来发现了类别嵌套的限制,才决定将它们合并。

我只是提供反馈,让你知晓这一情况。

谢谢!这很有用的反馈。Discourse 用户界面中没有显示任何内容来告知您“关于”主题无法移动的原因。