将 CSV 用户活动从一个 Discourse 导入到另一个

我参加了一个在 Discourse 上举办的研讨会,并成功下载了我所有的用户活动记录。在那次研讨会中,我实际上正在构思我们社区 createyourownschool.com 的概念。我很希望将这些用户活动导入到我自己的 Discourse 社区中,以便我的团队能够了解项目的起源,并对我可能忘记推进的事项提出建议。

是否可以使用 CSV 文件将数据上传到我的 Discourse 社区?如果是,能否提供一些相关指南?

2 个赞

您想迁移……具体是哪些内容?仅包括您创建的议题,以及您在这些议题中发布的帖子吗?

由于您的用户导出文件仅包含您自己的帖子和您创建的议题,目前尚不清楚将此类数据导入另一个 Discourse 实例在实际操作中究竟意味着什么。能否请您举一个具体的现实案例,以便让情况更加清晰?

原网站还在运行吗?为什么不在你自己的网站上为每个新主题添加链接呢?

我认为,除非导入所有数据(包括原始主题和帖子),否则迁移用户活动是没有意义的。每个实例都有独特的引用 ID,因此导入工作并不简单。这听起来像是一个棘手的难题!

2 个赞

@codinghorror 在我参加的工作坊中,我们每个人都创建了一个主题,然后针对该主题回复了超过 100 天。其他人对我们的想法提出探讨,我们也借此理清了思路。当我第一次查看下载数据时,记录几乎有 1200 条。我开始逐一浏览并删除不重要的内容,随后意识到,或许更容易的方法是单独提取我最需要的部分,即我在该主题中的所有回复,以及我回应过的另外 35 个提示。

既然这听起来不太容易实现,我可能会将数据合并到 Word 或 Google 文档中,然后让我的团队在上面进行评论,以提炼出我们未来可以使用的想法和叙事语言。

@neounix 感谢你的回复,希望这对未来的人有所帮助,但我并不是特别精通技术。

@merefield 原网站是一个私人的工作坊空间,因此它将在几天内消失,因为它已于 12 月 31 日正式结束。

1 个赞

你应该能够将这些主题隔离到一个(或几个)类别中,并使用经过实战检验的 Move topics from one Discourse instance to another 导出类别功能。

4 个赞

在某些特定场景下,这确实有其合理性,我们很乐意提供支持,感谢您补充这些细节!

Discourse 的一项基本原则是:无论何种情况,用户都应当拥有对自己数据的可移植性。:bowing_man:

4 个赞

@Falco

我不确定这是否可行。我正在联系我的朋友 @craigconstantine,他可能知道如何操作,如果知道的话,或许愿意协助我。

@codinghorror 太棒了。

1 个赞

……我不确定你的 CYOS(她的社区)托管在哪里。@Falco 提到的那个 exp/inport 看起来像是一个命令行工具。我从未使用过它(因为我使用的是托管版 Discourse,无法访问命令行。)

1 个赞

@craigconstantine 我使用的是 [Communiteq(原 DiscourseHosting)](Managed Discourse Hosting - Communiteq)。我不知道如何按照他们的建议操作,如果您也不清楚,那我就一点一点地复制粘贴。谢谢。

我们可以为您执行分类导入。

但这需要一份分类导出文件,它与用户数据导出并不相同。

您可以联系原论坛的所有者,询问他们是否愿意并能够提供一份分类导出文件。

据我所知,该导出文件还会包含其他参与用户的个人资料(这些资料也会出现在您的论坛中)。我不确定这是否是您(或那些用户,或是原论坛所有者)所希望的。

我的估计是,在这种情况下,手动复制/粘贴内容会更简单、工作量更少。

2 个赞

@michaeld 谢谢您的回复。原网站现已下线。我认为复制/粘贴将是最佳方式。

1 个赞

如果用户可以从 Discourse 导出自己的数据,但无法将其重新导入到另一个 Discourse 实例,那将毫无帮助。

当然,这只会是对话的一方,这是一个很大的限制!!

没错。你拥有自己的数据,但不是其他所有人的数据。

抱歉打扰这个话题,但它非常接近我想要实现的功能,而且我还没有找到更接近的。


场景:一个 Discourse 论坛上的一群写作者,该论坛将在不确定的时间框架内崩溃。

Bhanu Sharma 捐赠空间上的一个全新 Discourse 论坛,由我担任管理员。

我正在考虑如何将我们多年的帖子(其中许多是简短的创意写作作品)完整地迁移到新论坛?


我刚才查看了我自己的 CSV 存档,并想起了在我软件职业生涯中过去使用 CSV 在不同数据库之间导出/导入的项目,以及使用 Perl 代码拆分/连接/创建字段——基本上,将一个 CSV 模式转换为另一个。

是否有现成的简单方法可以将旧站点的 CSV 存档导入新站点?如果有,能否有人给我指明方向?我查看了 Github 导入脚本集合,但它们似乎都在进行不同数据布局的导入。

如果没有——嗯,我的预算少得可怜,但我以前做过这类事情,通常是在一个全新的工作岗位上承受压力时做的,而且我已经退休了,我有一整天的时间。另外,在我看来,这将是一项有用的贡献。

我已经仔细考虑过了,并且想出了充分的理由来说明我的社区为何能从“重新开始”中受益。此外,可能还存在一些我无法轻易发现的安全问题,我对此并不了解!

但我在此宣布放弃这个项目,因为我已经从软件工程师的职位上退休了,现在有许多对我来说更重要的项目。

2 个赞

如果你能访问你已离开的社区的服务器(或者有管理员在那里为你做这件事),实际上很容易做到。我自己也做过几次。这指的是这里的内容:

它不是高保真度的——导入的是用户(仅他们的电子邮件地址)和主题/回复,而不是点赞或用户数据/个人资料/等。但它确实有效。

2 个赞

啊!这很有用,虽然对我没帮助,因为目前在 Nano 上似乎没有任何活跃的管理员。但我认为我们从头开始也没关系。

不过,我已经联系了一些可能对此感兴趣的人,他们可能也有能力让 Nano 的某个人帮忙。

如果“回复”指的是所有发布的帖子,那么“主题/回复”将涵盖人们希望带到新论坛的内容,这足以满足高保真度!