dariKG
1
みなさん、こんにちは。
私は、別の古いフォーラムの特定のユーザーが投稿した記事を使って、自分のフォーラムに投稿を移行しようとしています。
やりたいことは、スレッドとそれに関連する投稿を作成し、元の作成日時を保持することです。
POST 時に「created_at」フィールドを変更してもうまくいきません。API を使用して作業しています。
要約:古いフォーラムで 2011 年 10 月 14 日午前 7 時 45 分に投稿されたスレッドを、新しい Discourse フォーラムにインポートする際、元の投稿日時をどのように保持すればよいでしょうか?
ご協力ありがとうございます!
D.
コアリポジトリには多数のマイグレーションスクリプトの例があり、ここにはそれらを活用する方法もいくつかあります。なぜ API を使う必要があるのでしょうか?
dariKG
3
@merefield さん、ありがとうございます。いくつかの移行スクリプトは拝見しましたが、当面は直接 API を利用しています。
Discourse 上で私がやりたいこと(スレッドを過去の日付に作成する)がそもそも可能かどうか、少し気になっています。
hawm
(Hawm)
4
もし created_at 変数をより具体的に渡していない場合は、そのように試してみてください。
Discourse のソースコードを確認したところ、created_at の日付文字列を解析するために Time.zone.parse が使用されています。あなたの例では、以下のような結果になります。
pry(main)> Time.zone.parse("Oct 14, '11, at 07:45 am").to_s
=> "0011-10-14 07:45:00 UTC"
RFC 3339 形式の文字列はいかがでしょうか。
pry(main)> Time.zone.parse('2011-10-14T14:00:00-10:00').to_s
=> "2011-10-15 00:00:00 UTC"
「いいね!」 1