# 샘플 Ruby 스크립트를 사용할 수 없을 때 게시물을 대량으로 가져오는 가장 좋은 방법은?

**URL:** https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674
**Category:** Migration
**Created:** [4월 3, 2020, 9:30오전 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674 "2020-04-03T09:30:48Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![pnoeric](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pnoeric/32/177144_2.png) [@pnoeric](https://meta.discourse.org/u/pnoeric)
#### Post date: [4월 3, 2020, 9:30오전 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/1 "2020-04-03T09:30:49Z")

</div>

안녕하세요, 기존(독점) 포럼 소프트웨어에서 새 Discourse 포럼으로 대량의 콘텐츠를 이동하고 있습니다.

저는 Ruby 코더가 아니기 때문에 Discourse에서 제공하는 예제 가져오기 스크립트로 시작하기가 어려웠습니다… 제 상황에는 좋은 해결책이 아니었거든요. 그래서 모든 단계를 처리하기 위해 API를 직접 호출하고 있습니다.

문제는 진행 과정에서 많은 문제에 부딪히고 있다는 것입니다… 대부분은 레이트 리미팅이지만, 반복되는 포럼 문제나 모든 “현실 검사”(예: 최소 게시물 길이. 이 부분은 설정에서 '1’로 변경해야 한다는 것을 마침내 알아냈습니다)를 통과하여 메시지 콘텐츠를 전송하는 문제도 있습니다.

다른/더 나은 옵션이 있을까요? 데이터베이스에 데이터를 직접 푸시할 수 있는 방법이 있거나…?

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [4월 3, 2020, 11:27오전 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/2 "2020-04-03T11:27:14Z")

</div>

기존의 import 스크립트를 사용할 수 있는 프로그래밍 언어를 알고 있다면, 그것이 최선의 방법입니다. 일괄 import 스크립트는 SQL을 직접 수정하지만, 여전히 Ruby로 작성되어 있습니다.

---

<div class="post-metadata">

### Author: ![pnoeric](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pnoeric/32/177144_2.png) [@pnoeric](https://meta.discourse.org/u/pnoeric)
#### Post date: [4월 3, 2020, 11:45오전 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/3 "2020-04-03T11:45:26Z")

</div>

음… 스크립트를 좀 살펴볼게요. 다른 언어로는 숙련된 개발자이지만, Ruby/RoR은 잘 몰라요.

…

기존의 github 임포트 스크립트를 보고 돌아왔어요. 😉 제가 본 바로는, 제가 이미 작성해 둔 임포트 코드와 매우 비슷해 보입니다. 사용자, 주제, 그리고 마지막으로 메시지를 가져오기 위해 많은 루프가 사용되고 있어요. 첨부 파일을 처리하는 특수한 코드도 있네요 (별도로 업로드하고, Discourse 내부 URL을 가져와서 메시지 본문에 추가하는 방식).

이 스크립트들에서 제가 놓치고 있을지 모를 특별한 API 호출이나 도움이 될 만한 다른 것이 있나요? 제 문제는 제가 직접 임포트 스크립트(API를 사용해서)를 작성할 수 없다는 것이 아니라, 현재 방식이 다소 어색하게 느껴져서 더 매끄럽고 우아한 해결책이 있는지 궁금하다는 거예요. 샘플 스크립트 안에 다른 언어에서 활용할 수 있는 “트릭”(예: 특별한 API 호출 같은 것)이 있다면, 그 내용을 이해하고 싶어요.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [4월 3, 2020, 12:01오후 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/4 "2020-04-03T12:01:09Z")

</div>

> [@pnoeric](#):
>
> 제 문제는 그게 좀 어색해 보인다는 거예요.

그래서 제가 그걸 쓰지 말라고 권했거든요.

---

<div class="post-metadata">

### Author: ![pnoeric](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pnoeric/32/177144_2.png) [@pnoeric](https://meta.discourse.org/u/pnoeric)
#### Post date: [4월 3, 2020, 12:12오후 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/5 "2020-04-03T12:12:04Z")

</div>

> [@pfaffman](#):
>
> 그래서 저는 그것을 사용하지 않는 것을 추천했습니다.

하하, 네, 그 부분은 이미 확인했고, 저는 RoR에 대해 잘 알지 못한다는 것도 이미 알려진 사실입니다. 그래서 기존 스크립트 중 하나를 다시 작성하는 데 시간을 투자하는 것도 저에게는 좋은 해결책이 아닙니다. 혹시 여기서 제게 도움이 될 수 있는 다른 추천 사항이 있으시다면 😉 (진심으로) 듣고 싶습니다. 감사합니다.

---

<div class="post-metadata">

### Author: ![neounix](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neounix/32/215617_2.png) [@neounix](https://meta.discourse.org/u/neounix)
#### Post date: [4월 3, 2020, 2:02오후 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/6 "2020-04-03T14:02:10Z")

</div>

에릭, 안녕하세요!

핵심 마이그레이션 스크립트는 좋은 출발점이 될 수 있습니다. 저도 한 달 전만 해도 루비를 처음 접해 본 적이 없었거든요.

사실 며칠 전에는 마이그레이션을 돕기 위해 PHP 스크립트를 직접 작성했는데(PHP를 십 년 넘게 해 온 터라) 결국 루비로 다시 작성하기로 했더니 “정말 간단하더라” 하더군요. ㅋㅋ

이제 저는 루비 팬이 되었습니다!

처음엔 루비가 좀 낯설게 느껴졌는데, 지금은 점차 이해가 되고 있습니다.

두려워하지 말고 바로 도전해 보세요. 분명 잘 해낼 수 있을 겁니다!

아니면… 여기 있는 개발자 중 한 명을 고용해서 도움을 받으시는 것도 좋습니다!

---

<div class="post-metadata">

### Author: ![pnoeric](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pnoeric/32/177144_2.png) [@pnoeric](https://meta.discourse.org/u/pnoeric)
#### Post date: [4월 3, 2020, 2:10오후 UTC](https://meta.discourse.org/t/how-to-best-bulk-import-posts-if-unable-to-use-sample-ruby-scripts/146674/7 "2020-04-03T14:10:41Z")

</div>

감사합니다 – 네, RoR 배우는 것도 목록에 있습니다! 😉
