당사 웹사이트에서는 Telligent를 포럼으로 사용하고 있습니다. 현재 Telligent에서 Discourse로 포럼을 마이그레이션할 계획입니다. Telligent에는 약 4,500개의 주제를 마이그레이션해야 합니다. Discourse의 영구 링크(permalinks) 기능에 대해 알고 있습니다. 하지만 수동으로 진행한다면 매우 긴 과정이 될 것입니다. Telligent의 이 4,500개 주제에 대해 영구 링크를 자동으로 추가할 수 있는 방법이 있을까요?
RGJ
(Richard - Communiteq)
4월 29, 2021, 9:24오전
2
Telligent 가져오기 스크립트에는 가져오기 시 영구 링크(permalinks)를 추가하는 코드가 포함되어 있습니다.
SQL
break if rows.blank?
last_topic_id = rows[-1]["ThreadId"]
next if all_records_exist?(:post, rows.map { |row| import_topic_id(row["ThreadId"]) })
create_posts(rows, total: total_count, offset: offset) do |row|
user_id = user_id_from_imported_user_id(row["UserId"]) || Discourse::SYSTEM_USER_ID
post = {
id: import_topic_id(row["ThreadId"]),
title: CGI.unescapeHTML(row["Subject"]),
raw: raw_with_attachment(row, user_id, :topic),
category: category_id_from_imported_category_id(row["ForumId"]),
user_id: user_id,
created_at: row["DateCreated"],
closed: row["IsLocked"],
views: row["TotalViews"],
post_create_action:
proc do |action_post|
topic = action_post.topic
리처드님,
제안해 주셔서 감사합니다.
외부 유틸리티를 통해 진행할 예정입니다. Discourse API 호출을 조사하던 중 아래 주소를 발견했습니다.
https://qa-forums.techsoup.org/admin/permalinks.json
따라서 이 API를 사용하여 영구 링크(permalinks)를 추가할 계획입니다.