他の投稿も参照してください。それらは以下に関するものでした。
- レート制限の問題
- 検証の問題
- スレッドとトピックで検証バイパスが常に機能しない
結局、データベースに直接アクセスする方が簡単だと考えました。
API の気まぐれに対処するのに何時間も費やす代わりに、数分で動作し、おそらくよりパフォーマンスの高いものを機能させることができました。
同様のことをしたい人のために、これまでの調査からのメモを以下に示します。
まずコンテナに入ります。
sudo ./launcher enter app
次にデータベースに接続します。
sudo -u postgres psql discourse
トピックを挿入するには:
insert into topics (title, user_id, archetype, fancy_title, category_id, created_at, updated_at, last_post_user_id, bumped_at) values ('psql test', 1, 'regular', 'psql test',8, NOW(), NOW(), 1, NOW());
新しいIDを取得します。私の場合は 886 です。
次に投稿を挿入します。
insert into posts (user_id, topic_id, post_number, raw, cooked, created_at, updated_at, last_version_at) values (1,886,1,'this is the raw text','this is the cooked test',NOW(),NOW(),NOW());
次に posts_count を更新します(トピック挿入時にまだ行われていない場合)。トピックの本文には初期投稿が必要なようです。以下は、トピックの投稿数を 1 に変更します。
update topics set posts_count=2 where id=886;