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

I participated in a workshop that was hosted in Discourse and I was able to Download All my user activity. In that workshop I was actually developing the concept for our community.createyourownschool.com. I would love to import this user activity into my own Discourse community so that my team can see the project origin and chime in on things I may have forgotten to move forward.

Is it possible to use the CSV file to upload in my Discourse community, and if so, is there some instructions you can point me to.

2 个赞

You want to migrate … what, specifically? Just the topics you created, and your posts on your own topics you created?

Since your user export only includes your posts and your topics, unclear what importing that into another Discourse would actually mean in practice. Can you perhaps describe with an actual real world example to make it a bit more clear?

Is the original site still live? Why don’t you just link each Topic in new Topics on your own site?

I don’t think migrating user activity makes sense unless you import all the data including the original Topics and Posts. There will be unique reference ids unique to that instance so it’s not a trivial import. Sounds like a can of worms!

2 个赞

@codinghorror in the workshop I was participated in we each created one topic and then replied to that for over 100 days. Other people poked at our ideas and we were able to clarify our thinking. When I first looked at the download there was almost 1200 records. I started going through them and deleting things that aren’t important and then I realized I could probably more easily isolate the parts I would really want which are all my responses in that one topic and the 35 other prompts I responded to.

Since this doesn’t sound easy to do then I will likely do a Mail merge into a Word/Google doc and just let my team comment on that to extract the ideas and storytelling language we can use going forward.

@neounix I appreciate this response and hope it may help someone in the future but I’m not that much of a tech person.

@merefield The original site is a private workshop space and so it will disappear in a few days as it just officially ended on 12/31.

1 个赞

You should be able to isolate those topics in a single (or a few) categories and use the battle tested Move topics from one Discourse instance to another export category feature.

4 个赞

In some particular scenarios this can make sense, it’s something we want to support, so thanks for the additional detail!

One of the founding principles of Discourse is that users deserve portability of their own data, no matter what. :bowing_man:

4 个赞

@Falco

I’m not sure if this is possible. I’m bringing in a friend @craigconstantine who may know how to do so, and if so, might be willing to assist me.

@codinghorror that’s awesome.

1 个赞

…I’m not sure where you have CYOS (her community) hosted. That exp/inport mentioned by @Falco looks like a command line tool. I’ve never played with that (I’m on Hosted Discourse, so no command-line access for me.)

1 个赞

@craigconstantine I use [Communiteq (formerly DiscourseHosting) ](Managed Discourse Hosting - Communiteq). I don’t know how to do what they are suggesting and if you don’t either then I’m just going to copy and paste pieces in a little at a time. Thanks.

We can do the category import for you.

But that requires a category export which is not the same as the export of your user data.

You could ask the owner of the original forum if they would be willing and able to provide you with a category export.

IIRC that would also contain the user profiles of other users who participated there (and that would end up in your forum as well). I am not sure if that is something you (or those users, or the owner of the other forum) want.

My estimate is that in this specific case it is easier / less work to manually copy/paste the contents.

2 个赞

@michaeld thanks for the reply. The original site has been taken down now. I do think the copy/paste will be the best way.

1 个赞

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

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

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

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


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

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

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


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

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

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

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

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

2 个赞

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

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

2 个赞

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

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

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